首先创建两张表
CREATE TABLE Teacher
(
Id INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
Name VARCHAR(10) NOT NULL,
); CREATE TABLE Student
(
Id INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
TeacherID INT NOT NULL FOREIGN KEY REFERENCES Teacher(Id),
Name VARCHAR(10) NOT NULL,
Age INT NOT NULL,
);
一张老师表,一张学生表,关系为一对多;
IDENTITY(1,1) :设置该列为自增长列,没次增长1;
PRIMARY KEY: 设置该列为主键;
FOREIGN KEY REFERENCES: 设置主外键关系;
INSERT
INSERT :向表插入一条或者多条数据;
向老师表中插入一条数据:
--方法一:
INSERT INTO Teacher (Name) VALUES('李老师')
--方法二: 跟方法一相比少了INTO; INTO可有可无
INSERT Teacher (Name) VALUES('陈老师')
--方法三: 跟方法二相比秒了Teacher表的列名,如果不写则VALUES里的列值必须与Teacher表的列顺序一致(可为NULL的列如果为NULL也必须写NULL,不可以省掉)
INSERT Teacher VALUES('谢老师')
--一次性插入多条数据(效率比一条一条插入高)
INSERT INTO Teacher VALUES('李老师'),('陈老师'),('谢老师');
DELETE
DELETE:删除表中的一条或多条数据
--删除Id为1的数据
DELETE Teacher WHERE Id=1
--删除整个表
DELETE Teacher
注:如果Student表中有数据且外键引用的是Teacher表Id为1这行数据,当想删除Teacher表中Id为1的这行数据是如果有约束则删除失败
UPDATE
UPDATE: 更新表中的数据
--要修改多个列则列与列之间用","间隔:UPDATE TABLE SET A='A', B= 'B'
UPDATE Teacher SET Name='白老师' where Name='李老师'
SET子句还可以使用表达式:
UPDATE Teacher SET Name= Name + ''
SELECT
SELECT:查找
SELECT * FROM Teacher SELECT Id, Name FROM Teacher WHERE Id < 3