对于数据库中的数据操作主要有增删查改这四种操作,下面将分别从这几个方面进行说明(本章仅介绍增删改,查询操作将会作为单独的一章来说明)。
1、增加操作:
向数据库中添加数据主要使用(INSERT INTO 语句)
INSERT语法: INSERT INTO table_name (list_column) VALUES (list_value) --语法说明: --table_name:要添加数据的表名称 --list_column:列名称集,要为那些列添加数据 --list_value:值集,将该值添加到数据库中 --注意事项: --1、注意语句的完整性(在下面的例子中将会展示一个特殊的insert语句) --2、列项的个数与值集合个数必须一致 --3、列项的顺序与值集合的顺序必须一致 --4、对于数据类型为datetime和字符类型的列项在插入数据时注意要使用单引号将数据包含在内 --5、对于数据类型为bit的列项在插入数据时,注意使用0和1进行插入操作(1代表true、0代表false) --(在高版本的SQL Server中向表中插入中文时,要注意以“N'张三'”的形式进行插入,但当你向数据表中插入一些不常用的字符时,必须要使用该形式)
创建一个测试的数据表
CREATE TABLE Student ( stu_Id INT NOT NULL PRIMARY KEY, stu_Name NVARCHAR(4) NOT NULL, stu_Gender BIT DEFAULT 0, stu_Age INT NULL ) GO
示例代码:
代码展示: 1)、完整的INSERT语句 INSERT INTO Student (stu_Id,stu_Name,stu_Gender,stu_Age) VALUES(111,N'张三',0,12) GO --代码说明:所有的列项都要添加新的数据, 2)、不完整的INSERT语句(insert语句的简写形式) INSERT INTO Student (stu_Id,stu_Name,stu_Age) VALUES(101,N'李四',12) --代码说明:虽然stu_Gender的设置是NOT NULL,但是也对其进行了默认值设置,当不为其添加数值时,数据库系统会将默认值赋给它 -- 但是对于另一些为NOT NULL的项,若没有为其设置默认值,则不能这样简写(除非该项被设为NULL) --即上面的插入代码等同于 INSERT INTO Student (,stu_Name,stu_Gender,stu_Age) VALUES(111,N'张三',DEFAULT,12) GO INSERT INTO Student VALUES(102,N'王五',0,13) GO --代码说明:对于这种省略列项的表达,值集合必须包含全部的列项(即使有项已经设置了默认值也不可以省略) 3)、进行批量插入操作 INSERT INTO Student (stu_Name,stu_Gender,stu_Age) SELECT stu_Name,stu_Gender,stu_Age FROM Student GO --代码说明:将从一个表中查询到的数据批量的插入到表中 SELECT * INTO Student1 FROM Student WHERE 1<>1 GO --代码说明:复制一张表的结构信息,但是里面的内容没有复制 SELECT * INTO Student2 FROM Student GO --代码说明:复制一张表中结构,并将该表中的数据信息也拷贝了一份(可以用来备份单个表)
2、删除操作
删除操作主要使用删除数据表中的数据
常用语法:
DELETE FROM table_name WHERE语句
DELETE FROM table_name WHERE语句
示例代码:
1)、删除该数据表中的所有数据 DELETE FROM Student GO --代码说明:delete语句没有添加where语句时,将会删除整个数据表中的数据 2)、删除数据表中指定条件的数据 DELETE FROM Student WHERE stu_Id = 111 GO 3)、三种清空表的比较 TRUNCATE TABLE Student --代码说明:清空整张数据表,只产生一行日志信息 DELETE FROM Student --代码说明:删除整张表中的数据,每删除一行数据就会产生一条日志信息 DROP TABLE Student --代码说明:将该数据表彻底删除,(破坏了数据表的结构)
3、修改操作
修改操作就是对数据表中的某一行或某些行进行修改操作
常用语法: UPDATE table_name SET 条件 WHERE语句 --代码说明: --table_name:想要修改的数据表的名称 --STE语句:为列项设置新的值 --WHERER语句:进行条件选择
示例代码:
1)、修改指定的数据 UPDATE Student SET stu_Age=0 WHERE stu_Id = 101 GO --代码说明:设置学号为101的学生的年龄为0 2)、修改全部的数据信息 UPDATE Student SET stu_Age=0 GO --代码说明:设置该数据表中的学生的年龄全部为0(该操作不可控,一般情况下不使用) 3)、其他形式的修改语句、 UPDATE Student SET stu_Age += 1 GO --代码说明:数据表中学生的年龄全部加一 UPDATE Student SET stu_Age = 19 WHERE stu_Age IS NULL GO --代码说明:将数据表中年龄为NULL的值设置为19 UPDATE Student SET stu_Age = 19 WHERE stu_Age IS NULL AND stu_Id = 101 GO --代码说明:若学号为101的学生的年龄为NULL则将其设置为19 --关于WHERE语句只做了简单的描述,详细的描述将放到select语句中