精华内容
下载资源
问答
  • 数据库实验

    2015-12-13 19:14:44
    西工大计算机学院 数据库实验报告 利用图形用户界面创建,备份,删除和还原数据库和数据表 (50分,每小题5分)  数据库和表的要求(第四版教材第二章习题5要求的数据库) 数据库名:SPJ,其中包含四张表:S表, P...
  • 文章目录数据库实验1——数据库的创建和删除一. 实验目的二. 实验准备三. 实验要求四、实验步骤1.创建数据库EDUC的SQL语句:2. 根据步骤1的sql语句,写出创建数据库EDUC的sql语句,点击‘执行’按钮建立数据库EDUC...

    数据库实验1——数据库的创建和删除

    一. 实验目的

    1. 了解SQL Server数据库的环境。
    2. 掌握使用SQL 语句创建数据库的方法。

    二. 实验准备

    1. 登录SQL Server服务器。
    2. 了解创建数据库的SQL语句。

    三. 实验要求

    1. 掌握通过查询分析器进行交互式SQL语句的使用方法。
    2. 理解SQL Server中的共享架构dbo。
    3. 注意操作结果的截图与保存,供撰写实验报告使用。

    四、实验步骤

    1.创建数据库EDUC的SQL语句:

    示例:创建数据库userdb1
    
    create database userdb1 on
    (name=userdb1_data,--数据文件的逻辑名称,注意不能与日志逻辑同名
    filename='d:\sql_data\userdb1.mdf' ,--物理名称,注意路径必须存在
    size=5,--数据初始长度为5M
    maxsize=10,--最大长度为10M
    filegrowth=1)--数据文件每次增长1M
    log on
    ( name=userdb1_log, 
    filename='d:\sql_data\userdb1.ldf ' , 
    size=2 , 
    maxsize=5 , 
    filegrowth=1)
    

    2. 根据步骤1的sql语句,写出创建数据库EDUC的sql语句,点击‘执行’按钮建立数据库EDUC。

    出现错误:原因:没有创建相应的文件夹
    在这里插入图片描述

    虽然创建数据库成功,但是在对象资源管理器的数据库栏目上没有体现,查询各种操作后都需要刷新才会在对象资源管理器或者已经打开的查询页面出现。
    在这里插入图片描述

    刷新后:
    在这里插入图片描述

    体会:SQL的注释是由’–’标识的,SQL语句生成效果后需要刷新才会在界面体现。SQL语句对大小写并不敏感;创建数据库时必须有相应的目录。

    3. 将新创建的数据库设置为当前数据库。

     USE userdb1
     GO
    

    用SQL语句选中相应的数据库在对象资源管理器中并不会有明显的体现,还不如直接鼠标选中,简单粗暴。
    在这里插入图片描述

    鼠标选中相应数据库:
    在这里插入图片描述

    五、实验总结

    本次实验虽然不是初次接触数据库,却是初次创建一个自己的数据库。通过这次实验,我对学习的一些数据库的知识有了更深入的了解。

    展开全文
  • 数据库实验报告

    2017-12-14 23:37:15
    (2)删除数据库中学号为’200213801’的退学学生有关信息。 (3)将计算机系学生2号课成绩全部提高5%。 查询数据SQL语句: (4)统计有学生选修的课程门数。 (5)统计HU老师所授每门课程的学生平均成绩。 (6)统计所有选修...
  • 数据库实验报告1数据库定义实验

    千次阅读 2020-04-29 11:18:58
    (1)理解和掌握数据库DDL语言,能熟练地使用SQL DDL语句创建、修改和删除数据库、模式和基本表。 (2)掌握SQL语句常见语法错误的调试方法。 二、 实验内容: 教材3.3数据定义中例3.1至例3.11的要求操作,并截取...

    一、 实验目的:

    (1)理解和掌握数据库DDL语言,能熟练地使用SQL DDL语句创建、修改和删除数据库、模式和基本表。
    (2)掌握SQL语句常见语法错误的调试方法。

    二、 实验内容:

    教材3.3数据定义中例3.1至例3.11的要求操作,并截取相应的结果图

    1、定义模式
    模式定义语句:CREATE SCHEMA <模式名> AUTHORIZATION <用户名>
    【例3.1】为用户LJY定义一个学生-课程模式S-T
    在这里插入图片描述

    结果为:在这里插入图片描述
    ,在架构中可以找到在这里插入图片描述
    ;但如果写成在这里插入图片描述
    的形式,即把双引号去掉,执行命令会出现错误

    原因是SCHEMA的命名必须以“字母”,“”“@”,“#”开头,后跟“字母”,“”,“数字”,“$”,而“-”违反了SCHEMA的命名规则,所以系统才会报错,但是可以通过加双引号“”的方式来实现任意定义。

    【例3.2】CREATE SCHEMA AUTHORIZATION LJY
    在这里插入图片描述
    该句没有指定<模式名>,所以<模式名>隐含为用户名LJY。但是在架构中却无法找到新的模式:GDM。这是因为SQLServer并没有实现这一功能,但是可以通过直接使用与自己的用户名相同的架构名来创建新模式。

    【例3.3】为用户LJY创建一个模式TEST,并且在其中定义一个表TAB1。在这里插入图片描述
    用户可以在创建模式的同时在这个模式定义中进一步创建基本表、视图等。需要注意的是,上述语句必须一次执行,若分开执行,创建的表是dbo.TAB1,错误。执行命令成功,在架构中可以找到TEST,在表中可以找到TEST.TAB1此时便不能再用SELECT * FROM TAB1语句查询,会出现错误提示, 用查询语句SELECT *FROM TEST.TAB1可以显示成功创建的表的内容在这里插入图片描述

    2、删除模式
    删除语句:DROP SCHEMA <模式名><CASADE|RESTRICI>;
    CASEDE(级联):表示在删除模式的同时把该模式中的所有数据库对象全部删除。
    RESTRICT(限制):表示如果该模式中已经定义了下属的数据库对象(如表、视图等),则拒绝删除语句的执行,只有当该模式中无任何下属的对象时才能执行删除语句。

    【例3.4】DROP SCHEMA JG CASCADE
    在这里插入图片描述
    由于SQL Server中并未实现<cascade|restrict>功能,所以当执行 在这里插入图片描述
    时,会出现在这里插入图片描述
    ,所以删除模式可直接使用DROP SCHEMA JG即可。需要注意的是,当模式中有下属数据库对象时,是无法将其删除的。例如删除TEST模式(有下属对象—TAB1)。

    3、 基本表的定义
    基本表定义语句:CREATE TABLE <表名>(<列名><数据类型>[列级完整性约束条件]
    [,<列名><数据结构>[列级完整性约束条件]]

    [,表级完整性约束条件]);

    【例3.5】建立一个“学生”表student。
    在这里插入图片描述

    SQL语言使用CREATE TABLE语句定义基本表,建表的同时通常还可以定义于该表有关的完整性约束条件,新建的表,默认位于dbo下,即dbo.student。使用查询语句后在这里插入图片描述
    【例3.6】建立一个“课程”表Course.
    在这里插入图片描述

    创建成功后使用查询语句可显示:在这里插入图片描述
    本例说明参照表和被参照表可以是同一个表。
    【例3.7】建立学生选课表SC。
    在这里插入图片描述
    例3.5、例3.6和例3.7会建立如下三个表:在这里插入图片描述
    通过使用查询语句可显示:在这里插入图片描述

    4、 基本表的修改
    修改语句:
    ALTER TABLE<表名>
    [ADD[COLUMN]<新列名><数据类型>[约束条件]]
    [ADD<表级完整性约束>]
    [DROP [COLUMN]<列名>[CASCADE|RESTRICT]]
    [DROP CONSTRAN<完整性约束名>[RESTRICT|CASCADE]]

    【例3.8】向Student表中添加“入学时间”,其数据类型为日期型。
    在这里插入图片描述
    执行结果:在这里插入图片描述
    ADD子句用于增加新列、新的列级完整性约束条件和新的表级完整性约束条件。不管基本表中原来是否有数据,新增加的列一律为空值。

    【例3.9】将年龄的数据类型由字符型(假设原来的字符类型是字符型)改为整数
    在这里插入图片描述
    ALTER COLUMN子句用于修改原有的列定义,包括修改列名和数据类型。

    【例3.10】增加课程名必须取唯一值的约束条件
    在这里插入图片描述
    查询后显示:在这里插入图片描述
    此时的课程名必须取唯一值。

    5.基本表的删除删除语句:DROP TABLE <表名>[RESTRICT|CASCADE]

    【例3.11】删除Student表
    在这里插入图片描述
    RESTRICT:即该表的删除时不能被其他表的约束条件所引用,不能能有视图,不能有触发器,不能有存储过程或函数等,否则将删除失败。
    CASCADE:即该表的删除没有限制,再删除该表的同时,其相关联的依赖对象都将被一起删除。但是SQLServer并未实现这一功能,所以在执行语句时会出现错误提示:在这里插入图片描述
    【拓展】
    在这里插入图片描述
    执行报错:
    在这里插入图片描述
    SQLServer默认restrict,即如果欲删除的表被其他表正在引用,是无法直接删除的。直接删除时系统会报错,这是因为,Student表被SC表的约束引用,所以无法直接删除。需要先将表SC删除,然后再删除表Student.

    CREATE DATABASE LJY  --创建数据库
    USE LJY   --打开数据库
    --定义模式时要键入用户名,所以要新建一个用户名,安全性-用户-新建用户-不带登录名的SQL用户
    
    --例3.1:为用户LJY定义一个学生-课程模式S-T
    CREATE SCHEMA "S-T" AUTHORIZATION LJY
    
    CREATE SCHEMA S-T AUTHORIZATION LJY
    
    --例3.3:为用户LJY创建一个模式TEST,并且在其中定义一个表TAB1
    CREATE  SCHEMA TEST AUTHORIZATION LJY
    CREATE TABLE TAB1(COL1 SMALLINT,
          COL2 INT,
          COL3 CHAR(20),
          COL4 NUMERIC(10,3),
          COL5 DECIMAL(5,2)
          );
    SELECT * FROM  TAB1
    
    --例3.4:DROP SCHEMA JG CASCADE
    CREATE SCHEMA JG AUTHORIZATION LJY
    DROP SCHEMA JG CASCADE
    DROP SCHEMA JG
    
    --例3.5:建立一个“学生”表student
    CREATE TABLE Student(
        Sno CHAR(9 )PRIMARY KEY,  /*列级完整性约束条件,Sno是主码*/
        Sname CHAR(20)UNIQUE,   /*Sname取唯一值*/
        Ssex CHAR(2),
        Sage SMALLINT,
        Sdept CHAR(20)
        );
    SELECT *FROM Student
    
    --例3.6:建立一个“课程”表Course.
    CREATE TABLE Course(
                    Cno CHAR(4 ) PRIMARY KEY,/*列级完整性约束条件,Cno是主码*/
        Cname CHAR(40) NOT NULL,/*列级完整性约束条件,Cname不能取空值*/
        Cpno CHAR(4),            /*Cpno的含义是先修课*/
        Ccredit SMALLINT,
        FOREIGN KEY(Cpno) REFERENCES Course(Cno) 
               /*表级完整性约束条件,Cpno是外码,被参照表是Course,被参照列是Cno*/
                        );
    SELECT *FROM Course
    
    --例3.7:建立学生选课表SC
    CREATE TABLE SC(
                Sno CHAR(9),
       Cno CHAR(4),
       Grade SMALLINT,
       PRIMARY KEY(Sno,Cno),
                /*主码由两个属性构成,必须作为表级完整性进行定义*/
       FOREIGN KEY(Sno) REFERENCES Student (Sno),
                /*表级完整性约束条件,Sno是外码,被参照表是Student*/
       FOREIGN KEY(Cno) REFERENCES Course (Cno)
               /*表级完整性约束条件,Cno是外码,被参照表是Course*/
       );
    SELECT *FROM SC
    
    --例3.8:向Student表中添加“入学时间”,其数据类型为日期型。
    ALTER TABLE Student ADD S_entrance DATE;
    SELECT *FROM Student
    
    --例3.9:将年龄的数据类型由字符型(假设原来的字符类型是字符型)改为整数。
    ALTER TABLE Student ALTER COLUMN Sage INT
    
    --例3.10:增加课程名必须取唯一值的约束条件
    ALTER TABLE Course ADD UNIQUE(Cname)
    SELECT *FROM Course
    
    --例3.11:删除Student表
    DROP TABLE Student CASCADE;
    
    DROP TABLE SC;
    DROP TABLE Student;
    展开全文
  • 在 "用户信息" 窗口,输入用户信息,并接受软件许可证协议。 在 "安装定义"窗口,选择 "服务器和客户端工具" 选项进行安装。。  在 "实例名" 窗口,选择 "默认" 的实例名称。这时本SQL Server的名称将和Windows ...
  • 数据库实验一实验报告

    千次阅读 2020-03-30 17:40:52
    实验 1 :数据库的定义实验实验需要 2 学时。 一、实验目的 要求学生熟练掌握和使用 SQL 、 Transact-SQL 、 SQLServer 企业管理器创建数据库、表、索引和修改表结构,并学会使用 SQL Server 查询分析器接收 ...

    实验 1 :数据库的定义实验
    本实验需要 2 学时。
    一、实验目的
    要求学生熟练掌握和使用 SQL 、 Transact-SQL 、 SQLServer 企业管理器创建数据库、表、索引和修改表结构,并学会使用 SQL Server 查询分析器接收 Transact-SQL 语句和进行结果
    分析。
    二、实验内容
    1) 创建数据库和查看数据库属性。
    2) 创建表、确定表的主码和约束条件,为主码创建索引。
    3) 查看和修改表结构。
    4) 熟悉 SQL Server 企业管理器和查询分析器工具的使用方法。
    三、实验步骤
    1 .基本操作实验
    1)、 使用企业管理器建立学生_课程数据库。
    2)、 在企业管理器中查看学生_课程数据库的属性,并进行修改,使之符合要求。
    3) 、 通过企业管理器,在建好的学生_课程数据库中建立学生、课程和选课 3 个表,其结构为:
    学生 ( 学号,姓名,性别,出生日期,学院,所在系,联系电话 ) ;
    列名 数据类型 长度 是否允许为空值 默认值 说明
    学号 Char 6 N 主键
    姓名 Char 8 N
    性别 Bit 1 N 只能为0或1
    (0是女,1是男)
    出生日期 smalldatetime 4 N
    学院 Char 10 N
    所在系 Char 10 N
    联系电话 char 11 Y

    学号 姓名 性别 出生日期 学院 所在系 联系电话
    020101 杨颖 0 1980-7-20 信息 计算机 88297147
    020102 方露露 0 1981-1-15 信息 计算机 88297147
    020103 俞奇军 1 1980-2-20 信息 计算机 88297151
    020104 胡国强 1 1980-11-7 信息 计算机 88297151
    020105 薛冰 1 1980-7-29 水利工程 水利系 88297152
    020201 秦盈飞 0 1981-3-10 电子商务 经济系 88297161
    020202 董含静 0 1980-9-25 电子商务 经济系 88297062
    020203 陈伟 1 1980-8-7 电子商务 经济系 88297171
    020204 陈新江 1 1980-7-20 房建 水利系 88297171

    课程 ( 课程号,课程名,教师,开课学期,学时,学分) ;
    列名 数据类型 长度 是否允许为空值 默认值 说明
    课程号 Char 3 N   主键
    课程名 Char 20 N    
    教师 Char 10      
    开课学期 Tinyint 1     只能1-6
    学时 int 4    60  
    学分 Tinyint 1 N

    课程号 课程名 教师 开课学期 学时 学分
    101 计算机原理 陈红 2 45 3
    102 计算方法 王颐 3 45 3
    103 操作系统 徐格 2 60 4
    104 数据库原理及应用 应对刚 3 75 5
    105 网络基础 吴江江 4 45 3
    106 高等数学 孙中文 1 90 6
    107 英语 陈刚 1 90 6
    108 VB程序设计 赵红韦 3 70 5

    选课 ( 学号,课程号,成绩 ) 。
    列名 数据类型 长度 是否允许为空值 默认值 说明
    学号 Char 6 N 外键
    课程号 Char 3 N 外键
    成绩 Tinyint 1 0-100之间

    学号 课程号 成绩
    020101 101 85
    020101 102 87
    020101 107 88
    020102 101 58
    020102 102 63
    020104 107 76
    020202 103 55
    020202 108 80
    020203 103 57
    020204 103 71

    要求为属性选择合适的数据类型,定义每个表的主码,是否允许空值和默认值等列级数据约束。
    4)、 在企业管理器中建立学生、课程和选课 3 个表的表级约束:每个表的主码约束;学生表与课程表间、课程表与选课表之间的外码约束,要求按语义先确定外码约束表达式,再通过操作予以实现;实现选课表的课程号和学号的惟一性约束;实现学生表性别只能是“男”或“女”的 Check( 检查 ) 约束。
    2 .提高操作实验
    1)、用 SQL 描述的建立学生—课程库操作,在 SQL Server 企业管理器中实现
    2) 将设计的数据库应用系统中的数据库、库中的表、索引和约束用 Transact-SQL 表达,并通过企业管理器或查询分析器实现建库、建表、建立表间联系和建立必要的索引、列级约束和表级约束的操作。
    四、实验方法
    1 .创建数据库
    (1)、 使用企业管理器创建数据库的步骤
    1)、 从“开始”菜单中选择:程序 Microsoft SQL Server 2000 企业管理器。
    2)、 选中需要在其上创建数据库的服务器,单击前面的“ + ”号,使其展示为树形目录。
    图 3-1 在数据库的弹出菜单中选择新建数据库
    3)、 选中“数据库”文件夹,单击鼠标右键,在弹出菜单上选择“新建数据库”,如图 3-1 所示。随后在数据库属性对话框的常规页面中,输人数据库名,如图 3-2 所示。

    图 3-2 数据库属性对话框
    数据库属性对话框中有 3 个页面:常规页面、数据文件页面和事务日志页面。数据文件页面和事务日志页面主要用来定义数据库的数据文件和日志文件的属性。
    4)、 选择数据文件页面,输入学生_课程数据库的数据文件属性,包括文件名、存放位置和文件属性,如图 3-3 所示;再选择事务日志页面,输人数据库的日志文件属性,包括文件名、存放位置、大小和文件属性,如图 3-4 所示。在选择文件位置时,可以单击位于“位置”列的“…”按键,在调出的文件选择器中进行位置选择。
    5)、单击 [ 确定 ] 按钮,关闭对话框。在企业管理器窗口中出现“学生_课程”数据库标志,这表明建库工作已经完成。

    图 3-3 数据库属性对话框中的数据文件页面

    图 3-4 数据库属性对话框中的事务日志页面
    (2)、文件属性参数说明
    文件属性栏设在页面的下部,它包括下列选项:
    1)、 文件自动增长复选框:选中后允许文件放满数据时自动增长。
    2)、文件增长单选框:设置允许文件自动增长时,每次文件增长的大小。其中,选“按兆字节”项为设置文件增长为固定的大小,单位是 MB ;选“按百分比”项为文件按指定比例数增长,单位是%。
    3)、 最大文件大小单选框:设置当允许文件扩展时,数据文件能够增长的最大值。选“文件增长不受限制”项可使文件无限增长,直到用完磁盘空间;选“将文件增长限制为”项时,要设置文件最多达到的固定值。
    2 .查看和修改数据库属性参数
    已经建好的数据库,有时还需要对它的属性参数进行查看和修改。下面我们分两步介绍:先介绍查看和修改数据库属性的步骤,再介绍数据库有关的参数及其含义。
    (1)、 查看和修改数据库属性的步骤
    1)、 启动企业管理器,使数据库所在的服务器展开为树形目录。
    2)、选中数据库文件夹,使之展开;用鼠标右键单击指定的数据库标识,在弹出的菜单中选择“属性”项,如图 3-5 所示。出现数据库属性对话框,如图 3-6 所示。

    图 3-5 在企业管理器中选择数据库的“属性”项

    图 3-6 数据库属性对话框中的选项页面
    从该对话框中可以看出,它由 6 个选项卡构成,与图 3-2 不同的是增加了文件组、选项和权限页面。其中:文件组页面用于设置数据库的文件组,其概念在前面已经介绍过;权限页面用来设置用户对该数据库的访问权限,有关选项页面内容在下面介绍。
    3)、 在选项卡中查看或修改相应的内容,单击 [ 确定 ] 按钮关闭对话框。
    (2)、 选项页面中的数据库属性参数
    “选项”页面如图 3-6 所示。“选项”页面分访问、故障还原、设置和兼容性 4 个栏目。
    1)、 访问栏目。访问栏用来设置数据库的操作许可。
    限制访问复选框:选择后,限制用户访问数据库。
    db owner , dbcreater 或 sysadmin 成员:只能由数据库拥有者 ( 创建者 ) 使用数据库。
    单用户:在同一时刻是否只允许一个用户使用该数据库。
    只读:该数据库是否是只读的。
    2)、 故障还原栏目。设置故障还原模型。
    3)、 设置栏目。该栏目用来设置数据库在进行数据操作时的行为特征,它包括 8 个复选框,其含义比较容易理解。
    3 .删除数据库
    对于不需要的数据库,可以通过下面的方法删除:
    1)、 用鼠标右键单击要删除的数据库,在出现的弹出菜单中选择删除项。
    2)、在弹出的确认删除对话框中,单击 [ 确认 ] 按钮。
    4 .新建表
    在 SQL Server 2000 的数据库中,文件夹是按数据库对象的类型建立的,文件夹名是该数据库对象名。当在企业管理器中选择服务器和数据库文件夹,并打开已定义好的学生_课程数据库后,会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。要建立“学生”表,先选中学生_课程数据库中的表文件夹,单击鼠标右健。在弹出的菜单中选择新建表,如图 3-7 所示。随后的输入表结构对话框如图 3-8 所示。

    图 3-7 数据库中的表文件夹的弹出菜单

    图 3-8 输入表结构对话框
    输入表结构对话框是一张表,它的列属性有列名、数据类型、长度和是否允许空 4 项。用户把新建表的结构填入对话框的表中,表中的每一行定义新建表 ( 学生 ) 的一列,每一列定义新建表的一个列属性。当光标移到表中的某一行时,下面的列描述就会对应当前行显示输入项,
    用户可在其中对关系的属性进行进一步说明。列描述包括数据的精度、小数位数、默认值、是否标识等项。
    输入表结构时应注意以下几点:
    1)、“列名”列用于输入字段名,例如“编号”、“类别”等,列名类似于变量名,其命名规格与变量一致。列名中不允许出现空格,一张表也不允许有重复的列名。
    2)、“数据类型”列中的数据类型是通过选择方法,而不是直接键人数据类型字符输入的。当鼠标指针移向该列时,就会出现控制键,单击后就出现数据类型弹出框,如图 3-8 所示,可选择其中之一为指定的数据类型。
    3)、“长度”列、精度和小数位数项不是所有字段都必选的。例如 int 和 datetime 型的长度是固定的,也不需要数据精度值。数据精度仅对一些数值型、字符型、货币型等数据有效,小数位仅对一些数值型数据有效。
    4)、“允许空”列用于设置是否允许字段为空值,默认项用于设置字段的默认值。
    5)、标识、标识种子和标识递增量用于设置字段具有的新生行递增性、初始值以及步长,以便让 SQL Server 2000 自动填写该列的值。具有标识性能的字段的数据类型只能为 int , Smallint , tinyint,decimal(p , 0) 或 numeric(p , 0) ,而且不允许为空值。一个表只允许有一列具有标识性能。
    6)、列名前的一列按钮为字段标注按钮列。钥匙图标说明这个字段为主码,黑三角图标说明所指示行为当前字段。
    7)、在对话框中单击鼠标右键,则会出现一个弹出框,如图 3-9 所示。
    其中的几个选项非常有用:选择“设置主键”项,则定义当前字段为主码,表中第一列处会显示钥匙图案;选择“插入列”项,则在当前字段处插入一个新行;选择“删除列”项,则删除当前字段;选择“属性”项,可调出表属性对话框,如图 3-10 所示,可以在其中定义索引/键、与其他表间的关联和约束等属性,具体方法在下面介绍。

    图 3-9 建表对话框中的弹出框

    图 3-10 表属性对话框
    8)、 字段输入完后,就可以关闭建表对话框了。最后,会弹出输入表名对话框,如图 3-11 所示。在对话框中输入“学生”表名,单击 [ 确定 ] 按钮后,建表工作就完成了。

    5 .定义表的完整性约束和索引
    表的约束包括码 ( 主键 ) 约束、外码约束 ( 关联或关系约束 ) 、唯一性约束、 Check( 检查 ) 约束 4 种。这些约束可以在表属性对话框中定义。
    (1)定义索引和键
    选择“索引/键”页面,其界面如图 3-10 所示。
    1)、 查看、修改或删除索引时,先要在“选定的索引”下拉菜单中选择索引名,其索引内容就显示在表中。需要时,可以直接在表中修改索引内容,如改变索引列名,改变排序方法等。对于不需要的索引可以单击 [ 删除 ] 按钮,直接删除此索引。
    2)、 新建一个索引时,单击 [ 新建] 按钮,并在下面的表中输入索引名、索引列名及排列顺序。
    3)、 设置 UNIQUE 复选框,确定是否为唯一索引约束。设置 CLUSTERED 复选框,确定是否为群集索引 (CLUSTERED) 。
    (2) 定义表间关联
    选择表页面
    1)、 查看、修改或删除表关联时,先要在“选定的关系”下拉菜单中选择关联名 ( 即关系名 ) ,其关联内容就显示在表中。需要时,可以直接在表中修改关联内容,例如改变主键,改变外码键等。对于不需要的关联可以单击 [ 删除 ] 按钮,直接删除此关联。
    2)、 新建一个关联时,单击 [ 新建 ] 按钮,选择库中的关联表 ( 参照表 ) 后,在表中输入关联名、主码和外码。
    3)、 设置“创建中检查现存数据”复选框,确定新建关联时是否对数据进行检查,要求符合外码约束;设置“对复制强制关系”复选框,确定在进行数据复制时是否要符合外码约束;设置“对 INSERT 和 UPDATE 强制关系”复选框,确认在对数据插入和更新时,是否符合外码约束;设置“级联更新相关的字段”复选框和“级联删除相关的记录”复选框,确认被参照关系的主码值被修改时,是否也将参照表中的对应的外码值修改,而被参照关系的主码值被删除时,是否也将参照表中对应外码的记录删除。
    (3)定义 CHECK 约束
    选择 CHECK 约束页面
    1)、 查看、修改或删除 CHECK 约束时,先要在“选定的约束”下拉菜单中选择约束名,其约束内容就显示在约束表达式框中。需要时,可以直接在框中修改约束表达式。对于不需要的 CHECK 约束可以单击 [ 删除 ] 按钮,直接删除此约束。
    2)、新建一个 CHECK 约束时,单击 [ 新建 ] 按钮,并在表中输入约束名和约束表达式。
    3)、设置“创建中检查现存数据”,确认在创建约束时是否对表中数据进行检查,要求符合约束要求;设置“对复制强制约束”复合框,确认对数据复制时是否要求符合约束条件;设置“对 INSERT~UPDATE 强制约束”,确认在进行数据插入和数据修改时,是否要求符合约束条件。
    6 .修改表结构
    当需要对建好的表修改结构时,首先要在企业管理器中找到该表,用鼠标右键单击该表名,就会出现弹出菜单,如图 3-14 所示。随后,在弹出的菜单中选择“设计表”项,企业管理器会把如图 3-9 所示的建表对话框调出,用户可对原有内容进行修改。
    五、实验报告要求
    1)、分别用 SQL 和 Transact-SQL 表示学生_课程数据库建库和建表 ( 建索引 ) 操作,用 SQL 和 Transact-SQL 表示学生—课程库建表和建库操作。指出 SQL 和 Transact-SQL 定义语句的不同之处。
    建库操作
    在这里插入图片描述
    建表操作
    在这里插入图片描述
    2)、指出学生_课程数据库中各表的主码、外码和数据约束
    学生表的主码是学号,没有外码和数据约束,
    课程表的主码是课程号,没有外码,数据约束为开课学期只能为1-6,
    选课表没有主码,外码为学号和课程号,数据约束为成绩在0-100之间

    3)、实验操作步骤和实验结果,实验中出现的问题和解决方法。
    实验步骤:
    在这里插入图片描述
    实验结果:成功建立数据库学生_课程及各表。
    实验中出现的问题:不知道如何同时创建数据库和在此数据库各表。
    解决方法:分开创建数据库和在此数据库各表
    不知道如何给属性增加数据约束。
    解决方法:仔细浏览课件及上网搜索资料后就知道了。
    4)、 体会和提高。
    在接触数据库之前以为数据库挺难的,开始学习之后发现其实挺有趣的吧,开始实验课之后,学的内容可以上手实验了,自己动手建立数据库及其数据库中的各表,还有索引,约束条件那些,挺有意思的,在实验的过程中,让我知道了如何去用语句建立数据库,建立表,如何在指定数据库下建立表,让我认识到了数据库的语言sql和T-sql,虽然它们两并没有多大的区别。
    六、注意事项
    1)、建表中如果出现错误,应采用相应的修改结构或删除结构的方法。
    2)、 注意数据库的主码、外码和数据约束的定义。
    七、思考题
    (1)、为什么要建立索引 ?学生_课程库中建立多少索引合适。
    答:建立索引可以加快查询速度,学生_课程库中建立两个索引合适。

    (2)、 学生_课程库的选课表中,属性学号、课程号采用数值型,还是采用字符型的 ? 采用哪种数据类型更好 ?
    答:字符型,采用字符型更好,因为有时候学号、课程号会采用字符加数值的形式。

    展开全文
  • 《太原理工大学数据库实验》由会员分享,可在线阅读,更多相关《太原理工大学数据库实验(43页珍藏版)》请在人人文库网上搜索。1、实 验 报 告课程名称: 数据库系统原理 实验项目:认识DBMS系统、交互式SQL、数据...

    《太原理工大学数据库实验》由会员分享,可在线阅读,更多相关《太原理工大学数据库实验(43页珍藏版)》请在人人文库网上搜索。

    1、实 验 报 告课程名称: 数据库系统原理 实验项目:认识DBMS系统、交互式SQL、数据完整性、用户鉴别与数据控制实验地点: 实验室210 专业班级: 软件1334 学号: 学生姓名: 指导教师: 宋晓涛 2015年5月 8日学院名称软件学院专业班级1334实验成绩学生姓名学号实验日期2015.0课程名称数据管理库系统概论实验题目认识DBMS系统一、实验目的和要求(1)通过对SQL Server 2005/2008数据库管理系统的使用,了解DBMS的工作原理和系统构架。(2)熟悉SQL Server提供的管理工具(3)熟悉使用SQL Server Management Studio创建数据库对。

    2、象二、主要仪器设备计算机:HP-6470b windows7 64 位 运行环境: SQL Server 2008R2三、实验内容及要求3.1 安装SQL Server1在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样的配置,对今后运行数据库管理系统会有什么影响。2理解默认实例、命名实例的含义3了解SQL Server的身份认证模式,初步了解SQL Server的安全性。4了解SQL Server提供的服务。5检查SQL Server安装是否成功。3.2 管理和使用SQL Server了解SQL Server如何通过它提供的工具对数据库服务器进行管理和使用的。1、启动、暂停。

    3、和停止SQL Server学会运用SQL Server配置管理或SQL Server Management Studio启动和停止SQL Server的各种服务。2、了解SQL Server的管理工具初步了解SQL Server的提供了哪些主要管理工具和它们的功能。3、学会使用SQL Server联机丛书学会SQL Server联机丛书查询SQL命令语法格式、SQL Server数据库的概念、术语等内容。3.3 熟悉使用SQL Server Management Studio了解SQL Server Management Studio的基本用法,能熟练使用它管理数据库服务器和数据库对象。1、可。

    4、视化图形界面的操作熟悉使用SQL Server Management Studio中的对象资源管理器,熟悉其中列出的各类信息的含义,学会查看各种信息。2、查询编辑器的使用熟悉使用查询编辑器,了解如何编写SQL脚本,如何运行SQL脚本。3.4创建SQL Server数据库通过创建数据库,掌握使用SQL Server Management Studio创建数据库的方法,了解SQL Server数据库的构成。3.1 创建数据库1使用图形界面创建数据库系创建一个数据库,掌握使用图形界面创建数据库的步骤,了解其中各参数的含义。2使用SQL语句创建数据库使用查询编辑器编写并运行创建数据库的SQL语句,掌握。

    5、SQL语句的语法格式和主要参数的含义。3.2 了解数据库系统的构架1了解数据库系统的逻辑组件:它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。今后将学习如何操作这些数据库对象。2了解数据库的物理组件:思考数据库物理存储的存储单位是什么,数据主要以什么方式存放,如何确定数据的存放位置。3.5创建SQL Server数据库中的表通过创建表,掌握使用SQL Server Management Studio创建表方法,了解SQL Server数据库的数据类型,以及表中数据的维护。3.1 创建数据库表1使用图形界面创建表在数据库中创建Student、Course和SC表,掌握使用图形界。

    6、面创建表的方法。2掌握如何查询表的各种信息。3了解SQL Server提供的数据类型通过查询联机手册,了解SQL Server提供了哪些数据类型,以及他们的用法。3.2 维护表中的数据使用图形界面在Student、Course和SC输入分别输入若干行数据,熟练掌握数据输入、修改和删除的方法。四、操作方法与实验步骤1、创建数据库选择“新建数据库”,进入“新建数据库”界面:在“数据库名称”输入框中输入数据库名称:test,点击“确定”,即可创建数据库。展开“数据库”,创建的数据库将显示在列表中,如下图中的“test”。2、创建表创建学生-课程数据库中的三个表student、course和sc。3、。

    7、输入、修改和删除数据行4、查看数据鼠标右击要查看的表,在快捷菜单中选择“选择前1000行”五、讨论、心得遇到问题应该及时的问老师,问同学,并且结合课本,做到解决,深化所学到的知识,从而使自己的知识得到深化,能力得到进步。教师签字:学院名称软件学院专业班级软件1334实验成绩学生姓名学号实验日期2015.课程名称数据库系统管理实验题目交互式SQL一、实验目的和要求1,掌握 SELECT 语句基本语法,加深对查询语句基本概念要求。2,掌握简单表的查询。3,掌握连接查询。4,熟悉通过 SQL 对数据库进行操作。5, 掌握视图的操作。二、主要仪器设备计算机:HP-6470b windows7 64 位。

    8、 运行环境: SQL Server 2008R2三、实验内容和原理1在RDBMS 中建立一个学生-课程数据库,进行实验所要求的各种操作,所有的SQL 操作均在此建立的新库里进行。2根据以下要求认真进行实验,记录所有的实验用例及执行结果。数据定义:基本表的创建、修改及删除;索引的创建和删除。数据操作:完成各类查询操作(单表查询,连接查询,嵌套查询,集合查询);完成各类更新操作(插入数据,修改数据,删除数据)。视图的操作:视图的定义(创建和删除),查询,更新(注意更新的条件)。特别说明:实验中注意特定数据库系统(如SQL SERVER)的SQL 语句格式与SQL-3 标准的区别。四、操作方法与实验。

    9、步骤1. 数据定义创建学生选课数据库ST,包括三个基本表,其中Student表保存学生基本信息,Course表保存课程信息,SC表保存学生选课信息,其结构如下表:表1. Student表结构列名称用途类型长度约束备注Sno学号字符8主键Sname姓名字符8Ssex性别字符2Sage年龄整型Sdept所在系字符20Sclass班级字符4表2. Course表结构列名称用途类型长度约束备注Cno课程号字符4主键Cname课程名字符40Cpno先修课程号 字符4Ccredit学分整型表3. SC表结构列名称用途类型长度约束备注Sno学号字符8外键Cno课程号字符4Grade成绩整型2. 建立基本表建。

    10、立一个学生表Student:建立一个课程表Course:建立一个学生选课信息表SC:3. 数据操作一更新操作1,插入数据将如下表格中的数据分别插入到数据库相应的表中:表4.学生基本信息表学号姓名性别年龄所在系班级李勇男20CS1001刘晨女19CS1001王敏女18MA1002张立男19IS1003刘洋女1001赵斌男19IS1005张明明男19CS1002表5.课程信息表课程号课程名先修课程号学分1数据库系统原理5642高等数学23管理信息系统144操作系统原理635数据结构746数据处理27C语言4表6.学生选课信息表学号课程号成绩19228538819028013(1)插入到Studen。

    11、t表(2)插入到Course表(3)插入到SC表2,修改数据(1)将学生的年龄改为22岁。UPDATE student SET Sage = 22 WHERE Sno=;(2)将所有学生的年龄增加一岁。UPDATE Student SET Sage = Sage +1(3)填写赵斌同学的管理信息系统课程的成绩(4)将计算机科学系全体学生的成绩加5分(5)请自己完成如下操作a.将刘晨同学的2号课程成绩修改为80b.将“”同学的学号修改为“”3,删除数据将选课信息复制到一个临时表tmpSC中:在tmpSC中执行删除操作:(1)删除学号为的学生记录(2)删除学号学生的1号课程选课记录(3)删除临时表。

    12、中学生的全部选课记录请自己完成该操作。(4)删除计算机科学系所有学生的选课记录(5)删除全部选课记录(6)检查数据是否删除二数据查询操作完成如下查询操作:1 单表查询(1)按指定目标列查询l查询学生的详细记录:l查询学生的学号、姓名和年龄(2)目标列包含表达式的查询l查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名。(3)查询结果集中修改列名称l查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名。(4)取消重复行l查询选修了计算机课程的学生学号:比较ALL和DISTINCT的区别(5)简单条件查询l查询计算机科学系全体学生的名单(6)按范围查询l查询年龄在2023。

    13、岁之间的学生的姓名、系别和年龄(7)查询属性值属于指定集合的行l查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别(8)模糊查询l查询所有姓刘学生的姓名、学号和性别(9)查询空值l查询缺少成绩的学生的学号和相应的课程号(10)多重条件查询l查询计算机科学系年龄在20岁以下的学生姓名(11)结果集排序l查询全体学生情况,查询结果按所在系的系号升序排列,同一系中的学生按年龄降序排列(12)完成下列查询l查询学生基本信息,结果集属性名使用汉字l查询信息系且年龄大于23岁同学的学号和姓名l查询年龄是17、18、20、23岁同学的学号、姓名、年龄和所在系l查询年龄不在2124岁之间。

    14、的学生的姓名、系别和年龄2 分组统计(1)聚集函数的使用l查询学生总人数l查询选修了课程的学生人数l查询最高分(2)聚集函数作用于部分行l统计2号课程的总分、均分和最高分(3)分组统计l统计各门课程的选课人数、均分和最高分l统计均分大于90的课程(4)完成下面的查询l统计每个同学的学号、选课数、平均成绩和最高成绩l统计每个班的每门课的选课人数、平均成绩和最高成绩3. 连接查询(1)在WHERE中指定连接条件l查询每个参加选课的学生信息及其选修课程的情况l查询每一门课的间接先修课(2)在FROM中指定连接条件l查询每个参加选课的学生信息及其选修课程的情况(3)使用外连接查询l查询每个学生信息及其。

    15、选修课程的情况(4)复合条件连接查询l查询选修2号课程且成绩在90分以上的所有学生(5)多表查询l查询每个学生的学号、姓名、选修的课程名及成绩(6)完成下列查询l查询选修了2号课程的同学的学号和姓名l查询各门课程的课程号、课程名称以及选课学生的学号l查询选修了数据库系统原理课程的同学的学号和姓名和成绩4. 嵌套查询(1)由In引出的子查询l查询与“刘晨”在同一个系学习的学生(2)由比较运算符引出的子查询l找出每个学生超过他选修课程平均成绩的课程号。(3)带修饰符的比较运算符引出的子查询l查询其他系中比计算机科学系所有学生年龄都小的学生姓名及年龄。(4)由EXISTS引出的子查询l查询所有选修了。

    16、1号课程的学生姓名5. 集合查询(1)集合并l查询计算机科学系的学生及年龄不大于19岁的学生(2)集合交l查询计算机科学系且年龄不大于19岁的学生(3)集合差l查询计算机科学系且年龄大于19岁的学生6视图操作建立视图并基于视图进行查询:1. 创建视图(1)建立学生基本信息视图(2)建立学生均分视图(3)建立选课信息视图2. 视图查询(1)查询学生基本信息(2)找出每个学生超过他选修课程平均成绩的课程号(3)查询每个学生的学号、姓名、选修的课程名及成绩(4)比较使用视图查询和直接从基表查询的优点1,能分割数据,简化观点;2,,为数据提供一定的逻辑独立性;3,提供自动的安全保护功能;4,视图可以间。

    17、接对表进行更新,因此视图的更新就是表的更新。五、讨论、心得平时要多思考,多实践,这样子才能进步,才能有所收获,才能受益匪浅。学院名称软件学院专业班级软件1334实验成绩学生姓名学号实验日期2014.6课程名称数据库系统管理实验题目数据完整性一、实验目的和要求(1)了解SQL Serer数据库系统中数据完整性控制的基本方法(2)熟练掌握常用CREATE 或ALTER 在创建或修改表时设置约束(3)了解触发器的机制和使用(4)验证数据库系统数据完整性控制二、主要仪器设备计算机:HP-6470b windows7 64 位 运行环境: SQL Server 2008R2三、实验内容和原理结合ST数据。

    18、库中的各个表,设置相关的约束,要求包括主键约束、外键约束、唯一约束、检查约束、非空约束等,掌握各约束的定义方法。设置一个触发器,实现学生选课总学分的完整性控制,了解触发器的工作机制。设计一些示例数据,验证完整性检查机制。要求包括如下方面的内容:3.1 使用SQL语句设置约束使用CREATE或ALTER语句完成如下的操作,包括:1设置各表的主键约束2设置相关表的外键3. 设置相关属性的非空约束、默认值约束、唯一约束4. 设置相关属性的CHECK约束3.2 使用触发器创建一个触发器,实现如下的完整性约束:.王玉民程明王林总学分姓名学号709080成绩310642063106学分课程号学号SCStu。

    19、dentl 当向SC表中插入一行数据时,自动将学分累加到总学分中。l 记录修改学分的操作。3.4 检查约束和触发器分别向相关表插入若干条记录,检查你设置的完整性约束是否有效:1插入若干条包含正确数据的记录,检查插入情况2分别针对设置的各个约束,插入违反约束的数据,检查操作能否进行3向SC表插入若干行数据,检查触发器能否实现其数据一致性功能。四、操作方法与实验步骤一、声明完整性约束创建学生选课数据库“学生选课”,包括三个基本表,其中Student表保存学生基本信息,Course表保存课程信息,SC表保存学生选课信息,其结构如下表:表1. Student表结构列名称用途类型长度约束备注Sno学号字。

    20、符8主键Sname姓名字符8非空Ssex性别字符2男,女Sage年龄整型Sdept所在系字符20Sclass班级字符4非空Stotal总学分整型默认值0表2. Course表结构列名称用途类型长度约束备注Cno课程号字符4主键Cname课程名字符40非空,唯一Cpno先修课程号 字符4外键引用本表的CnoCcredit学分整型表3. SC表结构列名称用途类型长度约束备注Sno学号字符8主码属性,外键引用Student的SnoCno课程号字符4主码属性,外键引用Course的CnoGrade成绩整型00 AND Grade=0 AND Grade0 AND Grade100),不在此范围内不满足。

    21、check约束所以不可以正确执行。INSERT INTO Student(Sno,Sname,Ssex,Sclass) VALUES(,张盛,男,1008)可以正确执行。INSERT INTO Student(Sno,Sname,Ssex,Sclass) VALUES(,张盛,1008)不可以正确执行,性别Ssex属性被约束值必须为男或者女,即CHECK( Ssex in (男,女),而此条记录中没有性别的值,不满足性别属性的check约束,所以不可以正确执行。6检查外键约束(1)执行下面的语句检查外键约束的作用INSERT INTO SC VALUES(,1,95)不可以正确执行,SC表中定。

    22、义Sno与Cno为外键,分别引用Course表中的Sno与Cno,因为Course表中不存在学号为的记录,所以不满足外键约束,不可以正确执行。INSERT INTO SC VALUES(,10,95)不可以正确执行,理由同上,Course表中不存在课程号为10的记录。UPDATE SC SET Cno = 10 Where Cno=1不可以正确执行,理由同上。UPDATE Course SET Cno = 10 Where Cno=3不可以正确执行,理由同上。外键约束为子表(SC)中的记录必须从父表(Course)中来,子表中需引用父表的属性的值不可以出现父表中被引用属性中没有的值的记录。(2。

    23、)执行下面的语句检查对被引用表的约束DELETE Student WHERE Sno=可以正确执行。DELETE Student WHERE Sno=不可以正确执行,因为SC表中的Sno属性值引用Student中的Sno属性值,子表还存在,且对应引用的记录也存在,所以父表中此记录不可删除。可以在删除子表引用记录后父表的此记录即可删除。UPDATE Course SET Cno = 10 WHERE Cname = 数据库系统原理不可以正确执行,因为SC表中的Cno属性引用Course表中的Cno属性,Course表中的“数据库系统原理”对应记录的Cno已经被SC表引用,在SC表中此属性值存在的。

    24、情况下,Course表的此Cno属性值不可更改不可删除。三、触发器的定义及使用1定义触发器(1)定义一个触发器,实现有关学分的完整性约束:当向SC表插入一行选课记录时,自动将该课程的学分累加到该学生的总学分中。CREATE TRIGGER tr_INSERT ON SCFOR INSERT AS-声明变量DECLARE sno char(8) DECLARE cridit intDECLARE cno char(4)-提取插入的数据SELECT sno=Sno,cno=Cno FROM inserted-提取学生的总学分SELECT cridit = Ccredit FROM SC join 。

    25、Course ON (SC.Cno = Course.Cno)WHERE SC.Cno = cno-更新总学分UPDATE Student SET Stotal = Stotal + criditWHERE Sno = snoGO(2)定义一个触发器,实现对SC表的操作登记:当用户向SC表插入或修改时,记录该操作到数据库中。l 创建日志登记表:CREATE TABLE LOG_TABLE(username char(10), -操作人员date datetime, -修改时间Sno char(8) , -学生学号Cno char(4) -课程号)l 创建日志登记触发器:CREATE TRIGG。

    26、ER tr_UPDATE ON SCFOR INSERT,UPDATE ASDECLARE sno char(8) DECLARE cno char(4)DECLARE new smallintSELECT sno=Sno,cno=Cno FROM insertedINSERT INTO LOG_TABLE VALUES(CURRENT_USER,getdate(),Sno,Cno);GO(3)执行插入操作,触发触发器:INSERT INTO SC VALUES(,6,95)(4)验证触发器是否触发select * from studentselect * from LOG_TABLE五、讨论。

    27、、心得平时应该多多练习这方面的知识,熟能生巧,把知识的基础打好,不问及时问老师和同学,要学就学好这门课程.学院名称软件学院专业班级软件1334实验成绩学生姓名学号实验日期2015课程名称数据库系统管理实验题目用户鉴别与数据控制一、实验目的和要求(1)了解SQL Serer数据库系统中数据访问控制的基本方法(2)了解使用SSMS如何给用户授权(3)熟练掌握常用GRANT和REVOKE进行权限控制(4)验证数据库系统的访问控制二、主要仪器设备计算机:HP-6470b windows7 64 位 运行环境: SQL Server 2008R2三、实验内容和原理(1)创建新的数据库用户(2)对上一实验。

    28、建立的表进行权限设置(3)检查数据库用户的权限(4)撤销用户权限四、操作方法与实验步骤A、使用SSMS的图形界面创建用户并授权创建一个数据库用户:U1,授予他可以查询Student表的权限。1 使用SSMS的图形界面创建登录名在快捷菜单中选择“新建登录名”:进入“登录名”窗口,输入登录信息:按“确定”创建登录名。使用该名称可以登录数据库服务器。2 使用SSMS的图形界面创建数据库用户选择“学习”数据库,在快捷菜单中选择“新建登录名”:进入“数据库用户”窗口,输入用户名和登录名:注意:登录名是用户登录数据库系统的名称,用户名是该登录用户在指定数据库中的名称,两者可以相同。按“确定”创数据库用户。。

    29、3使用SSMS的图形界面进行授权,设置用户对对象的访问权限展开“学习”数据库的“安全性”下的“用户”,选择“U1”。()打开用户属性窗口:在“选择对象类型”窗口中选择“表” 。()在属性窗口的“安全对象”页中进行设置权限选择要访问的表Student,在下面的权限列表中点击“选择”权限的“授予”检查框。按“确定”授予“U1”可以查询Student表的权限。B、使用语句创建用户并授权在“学习”数据库中,使用SQL语句创建两个数据库用户,对数据库中的Student、SC、和Course表,分别对其授予不同的访问权限,如下表。表3.1 授予用户权限用户数据库对象权限查询插入修改删除U2StudentC。

    30、ourseSCU3StudentCourseSC1创建登录名用户要访问数据库,必须首先登录到服务器上。因此,首先需要为用户创建登录名。以系统管理员账户登录,进入数据库服务器,执行以下的操作。(1)分别创建两个登录名U2和U3:CREATE LOGIN U2 WITH password=1CREATE LOGIN U3 WITH password=1其中:“U2”、“U3”是用于登录数据库器的登录名,Password用于指定用户登录密码。(2)展开服务器的“安全性”下的“登录名”,检查登录名是否创建成功。2创建数据库用户用户登录服务器后,要进入某一数据库访问,需要为登录用户在该数据库中建立一个数。

    31、据库用户名。对创建的两个登录名,在“学习”数据库分别为其创建两个数据库用户:(1)切换到“学习”数据库:USE 学习(2)创建登录名在TEST数据库中的用户:CREATE USER U2 FOR LOGIN U2CREATE USER U3 FOR LOGIN U3其中:第二个“U2”是登录名,第一个“U2”是该登录名在“学习”数据库的用户名。这两个名称也可以同名。(3)展开“学习”数据库的“安全性”下的“用户”,检查数据库用户是否创建成功。3. 授权在数据库中添加新用户后,新用户没用访问数据库中数据的权限,需要数据库管理人员给其授予相关的权限后,才能执行相应的操作。按照表3.1,授权如下:(。

    32、1)授予U2权限GRANT SELECT ON Student TO U2(2)授予U3权限GRANT SELECT ON Student TO U3GRANT INSERT,UPDATE,DELETE ON Student TO U3GRANT SELECT ON Course TO U33.3 检查权限控制分别以两个登录名登录数据库,执行一些对数据库的操作,检查用户否允许执行相关的操作。1检查U2的权限以用户“U2”登录,执行如下的操作,检查能否正确的运行:SELECT * FROM StudentINSERT INTO Student(Sno,Sname,Sclass) VALUES(,。

    33、高志,1008)UPDATE Student Set Sage = Sage + 1DELETE FROM Student Where Sno = SELECT * FROM CourseSELECT * FROM SC 若不能运行,请解释为什么不能执行。2检查U3的权限以用户“U3”登录,执行如下的操作,检查能否正确的运行:SELECT * FROM StudentINSERT INTO Student(Sno,Sname,Sclass) VALUES(,钱红,1008)UPDATE Student Set Sage = Sage + 1DELETE FROM Student Where S。

    34、no = SELECT * FROM CourseINSERT INTO Course VALUES(20,FORTRAN语言,NULL,2)UPDATE Course Set Ccredit = 3 WHERE Cno=2DELETE FROM Course Where Cno = 6若不能运行,请解释为什么不能执行。3. 增加李刚的权限以用户“U3”登录,执行如下的操作:(1) 检查U3能否对SC表执行查询、插入、修改、删除操作。(2) 使用管理员帐号给U3授予对SC表的查询、插入、修改、删除权限(3) 再次检查李刚能否对SC表执行查询、插入、修改、删除操作。select * from S。

    35、Cinsert into SC(Sno,Cno,Grade) values(,4,90)update SC set Grade=85 where Sno= and Cno=4delete from SC where Sno= and Cno=43.4 撤销权限当不希望用户执行某些对数据库的操作时,可以撤销先前授予用户的操作权限。(1)撤销权限以系统管理员帐号登录,撤销“U3”对Student表的权限:REVOKE SELECT ON Student FROM U3REVOKE INSERT,UPDATE,DELETE ON Student FROM U3(2)检查权限以“U3”帐号登录,检查如下的命令能否正确的运行:SELECT * FROM StudentINSERT INTO Student(Sno,Sname,Sclass) VALUES(,赵光,1008)UPDATE Student Set Sage = Sage + 1DELETE FROM Student Where Sno = 五、讨论、心得我们应该勤动脑,养成好学的好习惯,熟练掌握课本,把每个知识点都牢牢掌握,争取学到最好。

    展开全文
  • 数据库实验3

    2021-06-14 12:12:00
    数据库实验3 一、实验内容 1.完成以下操作 ⑴ 向在实验二中所定义的数据表增加“备注”列,其数据类型为字符型,并查看新增列的值 alter table 汇总表 add 备注 char(20); select * from 汇总表 ⑵ 对上述数据表...
  • 数据库实验报告学习

    千次阅读 2018-07-30 01:28:53
    数据库实验报告学习 01 数据库及数据表的创建与删除  02 SQL语言 03 SQL查询数据 04 用户权限管理 05 Oracle数据库对象 06 数据备份与恢复 07数据库系统设计综合实验 实验报告要插入的表 --学生表 drop ...
  • 数据库实验一——数据库定义与操作语言实验一、实验题目二、实验内容和要求三、实验步骤(一)数据库定义实验(二)数据基本查询实验(三)数据高级查询实验(四)数据更新实验(五)视图(六)索引实验四、实验心得...
  • 数据库实验-触发器实验

    千次阅读 2019-11-11 20:52:05
    1.掌握触发器的创建、修改和删除操作。 2.掌握触发器的触发执行。 3.掌握触发器与约束的不同。 二、实验环境 硬件平台:PC; 软件平台:Windows 7 / SQLSERVER 2008 R2; 三、实验内容 1、 在 Student 表中编写 ...
  • mongodb 数据库实验

    2020-11-19 01:43:15
    mongodb 数据库实验 一:增加数据 操作1:单条插入:Yelp数据库中的User数据集插入符和如下要求的数据 _id:自定义为自己的班级; user_id:自己的学号+任意字符(多于22个字符取前22位,不足22个字符补充字母,数字...
  • 数据库实验

    千次阅读 2019-12-13 17:54:17
    实验数据库编程 一、实验目的 1.掌握触发器的概念,了解触发器的类型 2.掌握存储过程的创建与执行方法 二、实验内容 创建触发器trigger_delete,实现以下功能:当订单表的数据被删除时,显示提示信息“订单...
  • Oracle数据库实验操作

    2012-07-26 15:00:43
    实验149:收集数据库的统计信息 236 实验150:收集列的统计信息 238 实验151:自动收集统计信息 239 数据库的不同访问模式 240 实验152:全表扫描的优化 240 实验153:索引的五种使用模式 242 实验154:连接的三种...
  • 数据库实验

    2019-11-15 23:50:26
    数据库登陆名和数据库用户名 ...一个登录名可以和多个不同库下的用户做映射。 在同一个库下只能和一个用户做映射,并且一个用户名可以和多个登录名有映射关系,。 2、权限不同 真正有权限的是用户名,...
  • 数据库实验

    2013-05-01 14:22:36
    一、 实验内容 oracle管理平台,针对公共用户pub下的表,完成创建视图、查询验证视图、删除视图。视图名为test6_(题号,题号长度两位,前面补零),例如test3_01。
  • 数据库实验2

    2013-05-01 14:21:30
    一、 实验内容 oracle管理平台,针对公共用户pub下的表,完成创建视图、查询验证视图、删除视图。视图名为test6_(题号,题号长度两位,前面补零),例如test2_01。
  • Sql Server 数据库实验报告

    万次阅读 多人点赞 2019-11-28 15:25:37
    数据库原理 实验报告 目录 实验一 SQL Server的安装和配置 4 一、实验目的 4 二、实验内容 4 三、实验步骤 4 四、实验代码和结果 4 五、实验总结与体会 4 实验二 创建数据库 5 一、实验目的 5 二、实验内容 5 三、...
  • 数据库实验用户权限管理

    千次阅读 2019-05-22 16:08:13
    广州大学学生实验报告 开课实验室:计算机科学与工程实验(电子楼418B) 2019年5月22日 学院 计算机科学与网络工程学院 年级、专业、班 计科172 姓名 ...
  • 广州大学学生实验报告 开课学院及实验室:计算机学院 2020年12月24日 ...本实验的任务是设计并实现一个数据库系统。数据库设计的一般步骤包括:需求分析、概念结构设计、逻辑结构设计、
  • 数据库实验3教程
  • 实验8 数据库安全性(用户与权限管理)实验 8.1实验目的及要求 加深对数据库安全性的理解 8.2实验内容 数据库用户与权限管理 8.3实验步骤 8.3.1创建新用户 1.创建新用户; Mysql>create user ‘ljh’identified ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 56,983
精华内容 22,793
关键字:

数据库实验删除客户信息