一、 插入数据
1.插入单个记录 语句格式
INSERT INTO <表名> [(<属性列1>[,<属性列2 >...)] VALUES (<常量1> [,<常量2>] ... )
注意:
(1)INTO子句属性列的顺序可与表定义中的顺序不一致
(2)VALUES子句提供的值必须与INTO子句匹配
例:插入单个记录 -- 向student表中插入一条记录,所有字段都有值
INSERT INTO student VALUES('001242','张青','计算机','女','04-01-22',50,'三好生');
-- 向student表中插入一条记录,部分字段有值
INSERT INTO student(sno,sname,dept) VALUES('001243','李四','计算机');
- 插入多个记录
INSERT [INTO] <表名> [(字段名,...)][AS] 子查询
-- 向stu表中一次插入多条记录
INSERT INTO stu SELECT sno,sname,sex,dept FROM student;
二、修改数据
UPDATE <表名> SET列名={表达式 | (子查询) }[,...] [WHERE <条件表达式> ];
注意:
(1)如果不选WHERE子句,则表中所有的行全被更新;
(2)如果选择了WHERE子句,则使WHERE 中条件表达式为真的行被更新。
例:把student表中的总学分加10。
UPDATE student SET totalcredit=totalcredit+10;
--把student表中姓名为"罗林琳"的学生的专业改为"计算机",备注改为"三好学生"。
UPDATE student SET dept='计算机',remarks='三好学生' WHERE sname='罗林琳';
三、删除数据
DELETE FROM <表名> [ WHERE <条件表达式> ];
WHERE子句 指定要删除的元组 缺省表示要删除表中的全部元组,表的定义仍在字典中。
例:删除student表中计算机系全体学生的记录。
DELETE FROM student WHERE dept='计算机';
--删除student表中的所有记录。
DELETE FROM student;
TRUNCATE TABLE语句
截断基本表,从表中删除所有的行,并且释放该表所使用的存储空间。 在使用TRUNCATE TABLE语句时,不能回退已删除的行。
例: 将表STUDENT删除,并释放其存储空间。
TRUNCATE TABLE STUDENT ;
补充:自增字段
AUTO_INCREMENT类型定义的字段默认值和步长均为1,每插入一条记录,该字段的值自动加1。 插入操作中,被AUTO_INCREMENT修饰的字段可以给空值或具体值。
CREATE TABLE stu (stu_id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY , sname VARCHAR(10) );
-- 自增型字段值的插入数据的方式 INSERT INTO stu VALUES(NULL,'张三'),(NULL,'李四'),(10,'王五');