添加数据??
为表中所有字段添加数据
① INSERT语句指定所有字段名
INSERT INTO 表名(字段名1,字段名2,…)
VALUES(值1,值2,…);【提示:英文和中文数据需要加单引号,数字不用】
例:向student表中添加一条新记录,记录中id字段的值为1,name字段的值为‘zhangsan’,grade字段的值为98.5
让我们来验证一下数据是否添加成功
SELECT*FROM 表名;
【注意:使用INSERT语句添加记录时,表名后的字段顺序可以与其在表中定义的顺序不一致,它们只需要与VALUES中值的顺序一致即可】
② INSERT语句中不指定字段名
INSERT INTO 表名
VALUES(值1,值2,…);
【注意:由于INSERT语句中没有指定字段名,添加的值的顺序必须和字段在表中定义的顺序相同】
为表的指定字段添加数据
方法①
INSERT INTO 表名(字段名1,字段名2,…)
VALUES(值1,值2,…);
【注意:每个值的顺序、类型必须与对应的字段相匹配】
如果某个字段在定义时添加了非空约束,但没有添加default约束,那么插入新记录时就必须为该字段赋值,否则数据库系统会提示错误
(如果没有提示错误,那就是软件版本的问题。哪怕没有报错,从理论上看也是错的)
方法②
INSERT INTO 表名(字段名1,字段名2,…)
VALUES(值1,值2,…);
【注意:为指定字段添加数据时,指定字段也无需与其在表中定义的顺序一致,它们只要与VALUES中值的顺序一致即可】
INSERT语句的其他写法
INSERT INTO 表名
SET 字段名1=值1,字段名2=值2,……;
使用一条INSERT语句同时添加多条记录
INSERT INTO 表名(字段名1,字段名2,…)VALUES
(值1,值2,…),
(值1,值2,…),
……
(值1,值2,…);
【注意:和添加单条记录一样,如果不指定字段名,必须为每个字段添加数据,但是要保证VALUES后面跟随的值列表跟字段在表中定义的顺序一样】
【注意:如果指定了字段名,就只需要为指定的字段添加数据】
更新数据??
UPDATE更新部分数据
UPDATE 表名
SET 字段名1 =值1,字段名2=值2,…
WHERE 条件表达式;
例①
例②
UPDATE更新全部数据
UPDATE 表名
SET 字段名1 =值1,字段名2=值2,…;
删除数据??
① 删除部分数据
DELETE FROM 表名
WHERE 条件表达式;
例1
例2
② 删除全部数据
DELETE FROM 表名;
其他删除全部数据的方法(重新建了一个表)
①TRUNCATE TABLE 表名;
②DELETE FROM 表名;
【补充:DELETE语句每删除一条记录都会在日志中记录,TRUNCATE语句不会在日志中记录删除的内容,因此TRUNCATE语句的执行效率比DELETE语句高】