表名参数拼装后会跟在INSERT之后,可以是字符串,也可以是数组。
┌───────────────────────┬───────────────────────┐
│ 参数类型 │ SQL语句的结果 │
├───────────────────────┼───────────────────────┤
│null │INSERT 前缀+类名 │
├───────────────────────┼───────────────────────┤
│'table1' │INSERT table1 │
┝━━━━━━━━━━━━━━━━━━━━━━━┿━━━━━━━━━━━━━━━━━━━━━━━┥
│array('table1') │INSERT table1 │
├───────────────────────┼───────────────────────┤
│array('t1'=>'table1') │INSERT table1 AS t1 │
├───────────────────────┼───────────────────────┤
│array(array('DELAYED','IGNORE'),'table1') │INSERT DELAYED IGNORE table1 │
└───────────────────────┴───────────────────────┘
字段参数拼装后会跟在表名之后,可以是字符串,默认时为空。
┌───────────────────────┬───────────────────────┐
│ 参数类型 │ SQL语句的结果 │
├───────────────────────┼───────────────────────┤
│null │ │
├───────────────────────┼───────────────────────┤
│'column1,column2' │(column1,column2) │
┝━━━━━━━━━━━━━━━━━━━━━━━┿━━━━━━━━━━━━━━━━━━━━━━━┥
│array('column1','column2') │(column1,column2) │
└───────────────────────┴───────────────────────┘
赋值参数拼装后会跟在VALUE之后,可以是字符串,也可以是数级或二维数组。注意该参数可以是插入一条记录也可以插入多条记录。
┌───────────────────────┬───────────────────────┬───────────┐
│ 参数类型 │ SQL语句的结果 │ 占位参数数组值 │
├───────────────────────┼───────────────────────┼───────────┤
│null │ │ │
├───────────────────────┼───────────────────────┼───────────┤
│'null,100,ABS(-1)' │VALUES (null,100,ABS(-1)) │ │
┝━━━━━━━━━━━━━━━━━━━━━━━┿━━━━━━━━━━━━━━━━━━━━━━━┿━━━━━━━━━━━┥
│array(null,true,false,100,'ABS(-1)') │VALUES (NULL,1,0,100,ABS(-1)) │ │
├───────────────────────┼───────────────────────┼───────────┤
│array('c1'=>null,'c2'=>'s1') │VALUES (?,?) │array(NULL,'s1') │
├───────────────────────┼───────────────────────┼───────────┤
│array('c1'=>array('s1','s2')) │VALUES CONCAT_WS(',',?,?) │array('s1','s2') │
├───────────────────────┼───────────────────────┼───────────┤
│array('c1'=>'s1','c2'=>array('s2','s3')) │VALUES (?,CONCAT_WS(',',?,?)) │array('s1','s2','s3') │
├───────────────────────┼───────────────────────┼───────────┤
│array(array('1','2'),array('3','4')) │VALUES (1,2),(3,4) │ │
├───────────────────────┼───────────────────────┼───────────┤
│array(array('c1'=>'s1'),array('c2'=>'s2')) │VALUES (?),(?) │array('s1','s2') │
└───────────────────────┴───────────────────────┴───────────┘
其他参数拼装后会跟在整个SQL语句之后,这里一般是字符串。
┌───────────────────────┬───────────────────────┬───────────┐
│ 参数类型 │ SQL语句的结果 │ 占位参数数组值 │
├───────────────────────┼───────────────────────┼───────────┤
│null │ │ │
├───────────────────────┼───────────────────────┼───────────┤
│'SELECT c1,c2 FROM table1' │SELECT c1,c2 FROM table1 │ │
└───────────────────────┴───────────────────────┴───────────┘
设置参数拼装后会跟在SET语句之后,这里只能是关联数组。触发条件是赋值参数为空值。
┌───────────────────────┬───────────────────────┬───────────┐
│ 参数类型 │ SQL语句的结果 │ 占位参数数组值 │
├───────────────────────┼───────────────────────┼───────────┤
│array('c1'=>'s1','c2'=>array('s2','s3')) │SET c1=?,c2=CONCAT_WS(',',?,?) │array('s1','s2','s3') │
└───────────────────────┴───────────────────────┴───────────┘