习题集

一.  请写出数据库分离和附加的步骤

数据库右键分离,数据库右键附加

二.  请写出数据库导出SQL脚本的步骤

数据库名右键分离脚本高级框架和数据完成

三.  请写出SQL Server的四种完整性约束

1.实体完整性约束:不允许出现相同记录的数据
2.域完整性约束:对字段进行限定,不得插入不符合限定的数据
3.引用完整性:表与表之间的关系
4.自定义完整性约束:开发人员自己设定对字段的约束,不允许出现不符合约束的数据

四.  如何设置表的主键和标识列

.表的主键:选用表中不会出现重复数据的列,而且尽量不要选择多列作为主键,最后要选择列数据修改次数不多的列作为主键
.表的标识列:标识列的数据类型必须为int,将此字段的标识规范改为”是“

五.  请写出主外键关系确立后操作主数据的注意事项

外键找主键(需要关联的主键列在哪个表中哪个就是主键表)主键更改外键会一起更改

六.  请写出使用SQL插入数据时的注意事项+

  1. 注意插入数据时数据字段的数据类型,时候有约束,是否是住建

  2. 删除数据或修改数据时看是否有外键关联

七.  请写出增删改SQL语句的基本语法

向Student表中插入数据
--语法:INSERT [INTO] 表名 (列名) VALUES (值列表)

--删除数据:针对表中的记录进行删除
--语法:DELETE FROM 表名 WHERE 表中唯一标识

修改数据:针对表中数据进行修改,where条件根据唯一数据进行限定
--语法:UPDATE 表名 SET 列名1=更新值1,列名2=更新值2 WHERE 表中唯一标识

-

八.  请写出添加多行数据的三种方式

-插入多行数据
--从from的表中拿出select的列数据插入到into的表中
--表必须创建
INSERT INTO AddressList(StudentName,Address,Email)
SELECT StudentName,Address,Email
FROM Student

--插入多行数据
--表自动创建
SELECT Student.StudentName,Student.Address,Student.Email
INTO AddressList
FROM Student

--插入多行数据
--表必须创建
INSERT INTO AddressList(StudentName,Address,Email)
SELECT '1','北京','[email protected]' UNION
SELECT '2','北京','[email protected]' UNION
SELECT '3','北京','[email protected]' UNION
SELECT '4','北京','[email protected]' UNION
SELECT '5','北京','[email protected]' UNION
SELECT '6','北京','[email protected]'

九.  假设My School数据库有如下Student表和Grade表

   Student表结构(其中Student No为主键,表中GradeIdGrade表中的GradeId为主外键关联):

      

   Student表的数据:

      

Grade表结构(其中Grade Id为主键,并且是标识列):

      

   Grade表的数据:

      

问题一:更改Student NoS1101009的学生记录,将密码修改为:p w d@123,将年级编号修改为:4

UPDATEStudent SET LoginPwd='pwd@123',Gradeld=4 WHERE Student No='s1101009'

问题二:向学生表中新增一条记录

INSERT [INTO] Student VALUES('1','a','张三','男',1,'a','a','@')

问题三:向年级表中新增一条记录

INSERT [INTO]  Grade VALUES ('6','112')

问题四:删除学生表中编号为S1101007的记录

DELETE FROM Student WHEREStudentNo='s1101007'

问题五:删除Grade表中Grade Id1的记录(根据表中数据分析,采用哪两种方式删除?)

解除关系,右键删除

※前四问均手写SQL,最后一问可以文字描述

      

猜你喜欢

转载自www.cnblogs.com/danxun/p/10125895.html