1. 数据插入-INSERT INTO
INSERT INTO会修改原表
1.1直接插入行
1.语句结构:
INSERT INTO 表名 VALUES(插入值)
注:插入值可以是完整的行,即每个列都有值;也可以是部分行,即有的列值是NULL或者缺省。
这两种的语句区别是:
(1)插入完整的行:
INSERT INTO 表名 VALUES(插入值)
(2)插入不完整的行:
INSERT INTO 表名(插入字段名) VALUES (字段对应的插入值)
其中,插入字段名和插入值应当一一对应
举例:
这里的例子中 pro_info表、prod_info2表是一摸一样的,包括主键。
(1)插入完整行
INSERT INTO pro_info VALUES(1,'火腿肠','55g','2019/2/4',12,15.5.21)
(2)插入部分行/完整行
INSERT INTO pro_info(prod_id, prod_name...) VALUES (1,'火腿肠',.....)
注:
(1)如果插入的部分行,指定部分列,这个列名和其内容对应即可,所以可以调整列的顺序,可以只给部分行,表结构发生变化也不影响。
(2)注意引号的使用。
(3)其实写上表名(字段名)更好,因为可以控制顺序,避免某个表在未知的情况下,列的顺序改了,那么在插入数据时就会导致错误。
(4)插入值可以是空值,直接在VALUES不填充内容。
示例
例1,插入完整行,8列
INSERT INTO prod_info2
values('T0092','测试商品','test','test','test',12,3,'NJ0109');
注:要与表格中列的格式相对应,比如字符串就用引号,数字就用数字,日期就用日期。
运行插入代码后,会出现‘affected 1 rows’,说明插入了一行。如果插入的数据在表中不显示那么就点一下红圈位置刷新一下。
注意: 主键列的值是不能重复,也不能是空值。
例2,插入不完整行,4列
INSERT INTO prod_info2(prod_id, prod_name, brand, type)
VALUES ('T0093','测试商品','test','test');