• 数据库前三章测试题


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

    分离:

      右击数据库“MySchool",在弹出的快捷菜单中选择“任务”→“分离”选项;

      打开“分离数据库”窗口,勾选“删除连接,更新系统”选项;

      然后点击“确定”,完成分离,分离的数据库将不会线束在数据库列表中,但是其物理文件依然保存,在磁盘中,此文件可以复制,粘贴的;

    附加:

      右击数据库“MySchool”,在弹出的快捷菜单中选择"任务"→“附加”选项;

      单击“添加”按钮可以选择和制定数据库文件,最后单击“确定”按钮可以添加数据库;

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

      右击数据库中任意的表,在弹出的快捷菜单中“任务”→“生成脚本”选项;

      打开“生成脚本”窗口,点击“下一步”,找到“高级选项”,将“仅限架构”改为“架构和数据”,然后选择您想要保存文件的路径,最后单击“下一步”,直到完成;

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

      1.实体完整性约束;

      2.域完整性约束;

      3.引用完整性约束;

      4.自定义完整性约束;

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

    主键:

      首先选中要建立主键的列右击;

      然后在弹出的快捷菜单中选择“设置主键”就可以完成了;

    标识列:

      在列属性下框中,找到“标识规范”,再找到“(是标识)”,然后点击两下,将“否”改变成“是”,则完成;

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

      1.删除数据时,先要删除外键,再删除主键;

      2.主键和外键的数据类型相对应;

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

      1.每次插入一整行数据,不可能只插入半行或者几列数据,但需要某些列为空或使用默认值;

      2.数据值的数目必须与列数相同,每次数据值得数据类型,精度和小数位也必须与相应的列匹配;

      3.INSERT语句不能为标识列指定值,因为它的数字是自动增长的;

      4.对于字符串类型,日期类型的列,当插入数据的时候,用单引号(‘)将其引起来;

      5.尽管可以不指定列名,但是最好明确指定插入的列和对应的值,以便能够将列和值清晰地对应起来;

      6.若在设计表的时候指定某列不可以为空,则g该列必须插入数据,否则将报告错误信息;

      7.插入的数据项,要求符合检查约束的要求;

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

    增修:

      UPDATE 表名 SET 列名=更新值 [WHERE 更新条件]

    删除:

       DELETE [FROM] 表名 [WHERE <删除条件>]

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

      1.INSERT SELECT 语句

      2.SELECT INTO 语句

      3.UNION 关键字

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

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

          

       Student表的数据:

          

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

          

       Grade表的数据:

          

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

      UPDATE Student SET LoginPwd = 'pwd@123',GradeId=4

       WHERE StudentNo='S1101009'

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

      INSERT INTO Student(StudentNo,LoginPwd,StudentName,Sex,GradeId,Phone,Address,BornDate)

      VALUES('s1201302098','PWD@123','呵呵','女','1','15555650879','北京海淀','1996-5-3')

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

      INSERT INTO Grade(GradeName)

      VALUES('Z1')

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

      DELETE FROM Student

      WHERE StudentNo='S1101007'   

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

     1. DELETE FROM Grade

         WHERE GradeId=1  

        2.   TRUNCATE TABLE Grade

         WHERE GradeId=1

  • 相关阅读:
    内向者生存手册
    不良言论屏蔽方案探讨——附加一点思考
    提高复用性的编码习惯
    如何管好.net的内存
    谨防信息超载
    .net的反对派们,精神比表面的东西更重要
    为什么我老是半途而废?
    对不起,我也是来给.Net泼冷水的(山寨版)
    把重要的事情先做好
    学英语(外语)的一个误区
  • 原文地址:https://www.cnblogs.com/wnwn/p/10126056.html
Copyright © 2020-2023  润新知