1、利用INSERT语句添加新行
一次性指定全部列值,其语法如下
INSERT INTO tbl_name VALUES(value1,valu22,......);
在使用此方法时,VALUES列表必须包含表中每一列的值,并且值得顺序要与各列在表里的存储顺序一致(通常情况下,该顺序是CREATE TABLE语句指定的顺序),如果不确定列的顺序可以用DESCRIBE tbl_name语句查看。
MySQL还支持用INSERT语句一次插入多条记录,语法如下
INSERT INTO tbl_name VALUES(...),(...),(...)......;
与使用多条INSERT语句相比,这种方法不仅能让你少打字还能提高服务器运行效率。注意,每行各列的值括起来的括号不能少。
命名赋值列,当创建的行只有少数几个列要初始化,可以用下面的方法
INSERT INTO tbl_name (col_name1,col_name2,......) VALUES(value1,value2,......);
命名赋值列,也可以同时插入多条记录,效果如下
对于没在INSERT语句中指定的列,将被赋予默认值
使用一系列的“列/值”进行赋值,此语法使用SET字句实现,其中包含多个col_name=value的赋值形式,没有VALUES()列表的形式。语法如下
INSERT INTO tbl_name SET col_name1=value1,col_name2=value2,......;
对于没在SET字句制定的列,将被赋予默认值。这种形式的INSERT语句,无法一次插入多行记录。
——————————————————————————————————————
2、利用文件添加新行
该文件可以包含INSERT语句或者原始数据
在没进入MySQL界面,可以利用mysql工具执行INSERT文件如图1所示,进入MySQL界面,可以使用source命令执行INSERT文件,如图2所示。
如果文件存储的不是INSERT语句,而是原始数据可以使用LOAD DATA语句或者客户端工具mysqlimport来加载。
LOAD DATA语句是一个从文件里读取数据的批量加载程序,需要在MySQL里运行。
上面这条语句会读取位于/root/sampdb/member.txt的文件,并将其发送至服务器,加载到member表里。
默认情况下,LOAD DATA语句会假设各列的值是以制表符分隔的,在各行末尾都是换行符。同时假设值的顺序都与表里存储的列的顺序相同。