有时候,执行MySQL的插入语句的时候,有可能我们的表的列数目特别多,如果在写SQL语句的时候,把所有的列名称都列出来显得非常不必要,这时候我们就可以使用不指定列的名称,插入一整行数据。
假设我们的数据库名字叫做student_info
,里面有’stu_id’,’stu_name’,’stu_sex’,’stu_age’等一些属性,,主键名字是‘stu_id’,它是自增的。正常的插入语句是这样写:
INSERT INOT student_info (stu_id,stu_name,stu_sex,stu_age) VALUES(102,'Tom',‘man’,18)
可是当我们插入一整行数据的时候,就可以不指定具体的列的名称:
INSERT INOT student_info VALUES(stu_id,'Tom',‘man’,18)
这样可以让stu_id自动增加
在表的列比较少的时候,这样子优势不明显,可以当我的列有这么多的时候:
key_id int(11) NO PRI auto_increment
date tinytext YES
item_id tinytext YES
cate_id tinytext YES
cate_level_id tinytext YES
brand_id tinytext YES
supplier_id tinytext YES
pv_ipv double YES
pv_uv double YES
cart_ipv double YES
cart_uv double YES
collect_uv double YES
num_gmv double YES
amt_gmv double YES
qty_gmv double YES
unum_gmv double YES
amt_alipay double YES
num_alipay double YES
qty_alipay double YES
unum_alipay double YES
ztc_pv_ipv double YES
tbk_pv_ipv double YES
ss_pv_ipv double YES
jhs_pv_ipv double YES
ztc_pv_uv double YES
tbk_pv_uv double YES
ss_pv_uv double YES
jhs_pv_uv double YES
num_alipay_njhs double YES
amt_alipay_njhs double YES
qty_alipay_njhs double YES
unum_alipay_njhs double YES
使用这样子的插入就比较简单了
INSERT INTO tableName VALUES (key_id,xxx,xxx,xxx,xxx,xxx,...)";
其中xxx是你要插入的数据,注意数据要保持次序,否则数据就紊乱了