数据库验证性

数据库验证性
数据库验证性

1.掌握SQL语句创建表及关系;

2.熟练运用SQL语句选择查询表中的记录;

3.熟练运用SQL语句对表进行插入、删除、修改等操作。

4.通过本次实验使学生对SQL语句有更加深刻的认识和理解。

二、实验仪器或设备

1.硬件设备:1台/学生微型计算机;

2.配置软件:Access 2010版本。

三、总体设计(设计原理、设计方案及流程等)

学生-课程-选课数据库系统S-T应该至少包括学生表Student、学生选课表SC、以及课程表Course这三张表:

1.S-T的关系模式:

Course(课程号、课程名、先行课、学分)

SC(学号、课程号、成绩)

Student(学号、姓名、性别、年龄、所在系、入学时间)

2.数据表:

用SQL语句实现:

(1)查询信息系(IS系)全体学生;

(2)查询年龄小于20岁的学生;

(3)将一个新学生元组(学号:201215128;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中;

(4)将学生201215121的年龄改为22岁;

(5)删除计算机科学系所有学生的选课记录。

四、实验步骤(包括主要步骤、代码分析等)

1.创建表(1)(2)(3)CREATE创建的语句

Student表:

CREATE TABLE Student

(Sno CHAR(9)PRIMARY KEY,

Sname CHAR(20)UNIQUE,

Ssex CHAR(2),

Sage SMALLINT,

Sdept CHAR(20)

);

Course表:

(Cno CHAR(4)PRIMARY KEY,

Cname CHAR(40)NOT NULL,

Cpon CHAR(4),

Ccredit SMALLINT,

FOREIGN KEY(Cpon)REFERENCES Course(Con)

);

SC表:

CREATE TABLE SC

(Sno CHAR(9),

Cno CHAR(4),

Grade SAMLLINT,

PRRIMARY KEY(Sno,Cno),

FOREIGN KEY(Sno)PERERENCES Student(Sno),

FOREIGN KEY(Cno)PERERENCES Course(Cno)

)

2.问题(1)(2)(3)(4)(5)代码

(1) 查询计算机与信息工程学院全体学生;

SELECT *

FROM Student

WHERE Sdept=’计算机与信息工程学院’;

(2)查询年龄小于20岁的学生;

SELECT *

FROM Student

WHERE Sage<20;

(3)将一个新学生元组(学号:201215128;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中;

INSERT

INTO Student(Sno,Sname,Ssex,Sdept,Sage)

V ALUES(‘201215128’,’陈冬’,‘男’,’IS’,’18’);

(4)将学生201215121的年龄改为22岁;

UPDATE Student

SET Sage=22

WHERE Sno=’201215121’;

(5)删除计算机科学系所有学生的选课记录。

DELETE

FROM SC

WHERE Sno IN

(SELETE Sno

FROM Student

WHERE Sdept=’CS’);

五、运行结果分析与总结

运行结果分析

1.创建的表的截图,及分析

Student表

Course表

SC表

2.问题(1)(2)(3)(4)(5)的结果截图及分析

(1) 查询计算机与信息工程学院全体学生;

(2)查询年龄小于20岁的学生;

(3)将一个新学生元组(学号:201215128;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中;

(4)将学生201215121的年龄改为22岁;

(5)删除计算机科学系所有学生的选课记录。

总结

本次试验,通过参照课本例题的进行练习,在练习过程中我们在操作过程中遇到了很多大大小小的问题,很多小步骤的疏忽就会导致程序无法运行。例如需要用英文符号输入,有的时候我们会用成中文符号。

在这次实验过程中,任何细小的地方我们都要认真对待。不懂可以询问老师问同学,通过老师、同学的帮助,找出了自己实验中的错误和不足,并且及时加以改正,最后将实验做完。看着自己的成果有一种欣慰的感觉。下次实验再接再厉。

实验成绩:_______________

教师签名:

年月日

实验八 数据库的安全性

实验八数据库的安全 T9.1 数据库用户的管理 1、实验目的 (1)掌握Windows登录名的建立与删除方法。 (2)掌握SQL Server登录名的建立与删除方法。 (3)掌握数据库用户创建于管理的方法。 2、实验准备 (1)了解windows身份验证模式与SQL Server身份验证模式的原理。 (2)了解数据库用户的建立与删除方法。 3、实验步骤 (1)Windows登录名。 ①使用界面方式创建Windows身份模式的登录名。方法如下: 第一步以管理员身份登录到Windows,选择“开始”,打开“控制面板”中的“性能和维护”,选择其中的“管理工具”,双击“计算机管理”进入“计算机管理”窗口。 在该窗口中选择“本地用户和组”中的“用户”图标,右击,在弹出的快捷菜单中选择“新用户”菜单项,打开“新用户”窗口,新建一个用户zheng。 第二步一管理员身份登录到SQL Server Management Studio,在对象资源管理器中选择“安全性”,右击“登录名”,在弹出的快捷菜单中选择“新建登录名”菜单项。在“新建登录名”窗口中单击“搜索”按钮添加Windows用户名zheng。选择“Windows身份验证模式”,单击“确定”按钮完成。 ②使用命令方式创建Windows身份模式的登录名,语句如下: 【思考与练习】 使用用户zheng登录Windows,然后启动SQL Server Management Studio,以Windows 身份验证模式连接。看看与以系统管理员身份登录时有什么不同。 (2)SQL Server登录名。 ①使用界面方式创建SQL Server登录名。方法为:在对象资源管理器的“安全性”中,右击“登录名”,在弹出的快捷菜单中选择“新建登录名”菜单项。在“新建登录名”窗口中输入要创建的登录名“yan”,并选择“SQL Server 身份验证模式”,输入密码,取消选择“用户在下次登录时必须更改密码”选项,单击“确认”按钮。 ②以命令方式创建SQL Server登录名,语句如下:

数据库综合练习一及答案

数据库综合练习一、选择题 1 ?描述事物的符号记录称为—B_。 A、信息 B、数据 C、记录 D、记录集合 2 . _C__是长期存储在计算机的有组织,可共享的数据集合。 A、数据库管理系统 B、数据库系统 C、数据库 D、文件组织 3. _A__是位于用户与操作系统之间的一层数据管理软件。 A、数据库系统 B、数据库管理系统 C、数据库 D、数据库应用系统 4 ?数据库系统不仅包括数据库本身,还要包括相应的硬件、软件和_D, A、数据库管理系统 B、数据库应用系统 C、数据库应用系统; D、各类相关人员 5?在人工管理阶段,数据是_B__ A、有结构的 B、无结构的 C、整体无结构,记录有结构 D、整体结构化的 6 ?在数据库系统阶段,数据是_D_。 A、有结构的 B、无结构的 C、整体无结构,记录有结构 D、整体结构化的

7 ?在文件系统阶段,数据__B— A、无独立性 B、独立性差 C、具有物理独立性 D、具有逻辑独立性 8 ?数据库系统阶段,数据_D___ A、具有物理独立性,没有逻辑独立性 B、具有物理独立性和逻辑独立性 C、独立性差 D、具有高度的物理独立性和一定程度的逻辑独立性 9 ?非关系模型中数据结构的基本单位是—C_。 A、两个记录型间的联系 B、记录 C、基本层次联系 D、实体间多对多的联系 10 ?数据的正确、有效和相容称之为数据的 B 。 A、安全性 B、一致性 C、独立性 D、完整性 11 ?在数据模型的三要素中,数据的约束条件规定数据及其联系的___B_。 A、动态特性 B、制约和依存规则 C、静态特性 D、数据结构 12. ___B_g于信息世界的模型,实际上是现实世界到机器世界的一个中间层次。 A、数据模型 B、概念模型 C、E-R图 D、关系模型 13. 在对层次数据库进行操作时,如果删除双亲结点,则相应的子女结点值也被同时删除。这是由层次模型的_C ―定的。 A、数据结构 B、数据操作 C、完整性约束 D、缺陷 14 ?客户/服务器结构与其它数据库体系结构的根本区别在于__D___ A、数据共享 B、数据分布 C、网络开销小 D、DBMS和应用分开

SQL数据库基础知识集合

1、数据库简介: 数据库是专门开发数据管理的软件,或者说专门管理数据的软件就是数据库。 数据库存在的意义就是:减轻开发人员的负担。数据库是一个综合的软件,那么我们不需要队要进行2进制保存数据进行处理了,但是却是要与数据库产生交互,那么命令式SQL,有技巧的,数据库就是万物皆关系(面向对象,万物皆是对象)有所区别。 2、数据库的发展: 一开始的是层次化的数据与网状数据库,后来也发现使用确实很麻烦。 于是到了1970年EF.Cold博士(IBM公司的研究员)开创了关系性的数据库的先驱,发表了关系性数据库的论文,但是由于当时电脑硬件的局限性,大家觉得跑如此大的程序不值得。后来,Oracle(甲骨文)公司的创始人,拉里带领Oracle投入到关系型数据库的研发,并且得到了一个大客户—美国国防部。随即开始世界刮起了关系数据库的旋风,随后各个公司都纷纷推出自己的数据库系统。比如:IBM的DB2 ,还有风靡一时的DBS3。 但是随即出现不兼容的问题,由于最早的时候都没有进行没规范。所以到最后各个数据库巨头统一了操纵数据库的SQL(结构化Struct数据查询语言)变成了标准语言,而关系型数据库也俨然变成大家的宠儿,Oracle也从一个小公司,变成现在的数据库巨头,而我们的微软也推出了SQLServer。当然还有PHPer的最爱mySQL。但是mySQL被SUN,SUN 被Oracle收购,现在有免费版与收费专业版了。所以我们学习SQL语言的时候,先学共同点,再学特异性。各种数据库软件在使用上有一点区别。 3、数据库系统详解: 为适应数据处理的需要而发展起来的一种较为理想的数据处理的核心机构。计算机的高速处理能力和大容量存储器提供了实现数据管理自动化的条件。 数据库系统一般由4个部分组成: 数据库,即存储在磁带、磁盘、光盘或其他外存介质上、按一定结构组织在一起的相关数据的集合。(个体) 数据库管理系统(DBMS)。一组能完成描述、管理、维护子数据库的程序系统。它按照一种公用的和可控制的方法完成插入新数据、修改和检索原有数据的操作。 数据库管理员(DBA)。 用户和应用程序。(微软的称作SSMS) 4、数据库系统的基本要求是: 1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。 2、冗余数据少,数据共享程度高。 3、系统的用户接口简单,用户容易掌握,使用方便。 4、能够确保系统运行可靠,出现故障时能迅速排除,能够保护数据不受非受权者访问或破坏,能够防止错误数据的产生,一旦产生也能及时发现。 5、有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户操作特性的变化,改善由于频繁插入、删除操作造成的数据组织零乱和时空性能变坏的状况。 6、具有可修改性和可扩充性、可维护性。 7、能够充分描述数据间的内在联系。 5、数据库(Database): 由众多的数据、数据表、约束、存储过程、函数、视图、索引构成的一个数据存储与交互单元,是按照数据结构来组织、存储和管理数据的仓库。 6、数据表(table): 数据表,实际上是一个二维表。一般是围绕一个事务、动作记录,或者是一个信息主题作为一个数据表。数据表由行与列构成。 7、列(column、field): 列,其实就是字段。也是决定了信息的基本单元。列,包含有数据类型的设定。 8、行(row、record): 行,实际上就是一条基本信息。一行包含了多列数据的存储的信息。所以一行也有一条记录之称。 9、行业(trade) 一个行业一种需求,没一个需求每一种数据库的设计模式与思想。每个行业的数据设计的重点都是不同的。侧重查询(要求低范式)还是操作(要求搞范式)就是自己选择的问题了。 10、索引(index) 索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引其实就是一个B+树,但是这个索引是N^n层数次方的。目的就是在数据库中划分出一定的区域优化查询。可以提升大量数据的查询速度。索引一般可以分为:基于字段优化查询速度的普通索引、唯一性索引、主键索引、全文索引、单列与多列索引。现在由于数据库系统的不断升级,我们只要设定索引就可以了,不需要特殊的维护。而且数据在查询的时候也会根据查询适当地选择是利用索引查询,还是仅仅是表查询。由于数据库系统的发展,系统内部已经自动帮我们完成对索引的维护。但是在设计的时候要考虑到索引的损耗问题。数据库DB就像是一个字典,索引就是根据指定字段制成的快速指向。由于只是指向数据对象标识,真正的数据是存储在DB中,所以查询速度极快。但是额外的内存与硬盘花销也是一个需要考虑的问题。比如:增加、删除、修改时数据库都要对索引进行维护,但是这样也是为了最后查询的效率的提升,特别适合W行级别的数据查询。而索引可以分为:隐式索引(针对单个字段)、唯一索引(唯一约束)、函数索引(函数(字段))、聚簇索引(主键)、组合索引(最多16个field)与全文索引(text)。一般索引会占用原数据库大小的20%。 11、视图(view) 固化的子查询,将一个子查询起了一个固化的名字,保存在数据库中,方便以后的使用。其实调用大量的Join来进行一个查询一般也是用视图。视图与索引都是为了优化查询的速度与语句。视图是优化语句,索引是优化单查速度。一般是DBA来设定数据库的视图,封装内部数据库的数据关系,范式修改数据容易了,视图让我们查询复杂关系的数据变得容易。 12、触发器(trigger) 触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由个事件来触发,比如当对一个表进行操作(insert,delete,update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。触发器可以从DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。 13、SQLServer数据类型详解

大一数据库实验一详解及答案

实验一熟悉数据库管理系统环境 一、实验目的: 1.了解SQL Server2008的基本安装和配置。 2.掌握SQL Server2008常用工具的基本操作方法。 3.了解SQL SERVER2008数据库及其表对象的建立方法。 二、实验内容和主要步骤: 4.参照相关文档进行SQL Server 2008的安装和配置; 5.打开SQL Server 2008 SSMS工具,进行简单操作; 6.在SQL Server 2008 SSMS工具的目录树中展开数据库文件夹,新建一个test数据库, 然后展开test数据库图标,则列出数据库的所有对象; 7.选中test下的“表”图标,则列出数据库的所有表(里面是空的)。 8.利用SSMS建立如下三个表,按下面的列表中的字段名(英文)、类型和宽度建立:(注 意主键、外键的建立,并输入数据体会实体完整性和参照完整性规则,部分列可以尝试用户定义的完整性规则) 表1 student (学生) 字段名字段说明类型字段大小小数位数 sno 学号Char 8 sname 姓名Varchar 8 ssex 性别Char 2 sdept 系别Varchar 20 sage 年龄Int 整型 表2 course (课程) 字段名字段说明类型字段大小小数位数 cno 课程号Char 3 cname 课程名称Varchar 20 Credit 学分Numeric 1 Cpno 系别char 3 表3 sc (选修) 字段名字段说明类型字段大小小数位数 sno 学号Char 8 cno 课程号Char 3 Grade 成绩numeric 1 9.向三个表中输入数据; 表5 Course表数据

数据库安全性和完整性实验

实验9:数据库安全性实验 一、实验目的 加深对数据库安全性的理解,并掌握SQL Server中有关用户、角色及操作权限的管理方法。 二、实验内容 1.数据库的安全性实验。在SQL Server企业管理器中,设置SQL Server 的安全认证模式,实现对SQL Server的用户和角色的管理,设置和管理 数据操作权限。 三、实验原理和步骤 1.设置SQL Server的安全认证模式,选择混合模式。 右键服务器属性-安全性:选择SQL Server和Windows身份验证模式。 重启服务,生效。 2.账号: sa账号登录 3.登录帐号的管理

1)将Windows帐号添加到SQL Server 2005中 创建操作系统用户- 4.数据库用户的管理 1)dbo用户; 查看banking数据库的dbo用户,查看用户权限。 2)U1用户; 创建banking数据库的U1用户,查看用户权限。 5.权限管理 1)赋予所创建的U1用户db_datareader角色,查看用户权限 2)赋予所创建的U1用户db_datawriter角色,查看用户权限 3)赋予所创建的U1用户db_owner角色,查看用户权限 4)两种方法赋予所创建的U1用户对banking数据库表customer的select 权限,验证并写出sql语句 5)两种方法赋予所创建的U1用户对banking数据库表branch的select 和对branch_name修改的权限,验证并写出sql语句 6)把对loan表的update权限授予所创建的U1用户用户,并允许将此 权限再授予其他用户,验证并写出sql语句 7)两种方法回收所创建的U1用户对banking数据库表customer的select 权限,验证并写出sql语句 8)两种方法回收所有用户对banking数据库表loan的update权限,验 证并写出sql语句 四、实验报告要求 要求写出如下设计报告: 1.用Transact-SQL写出实验操作的语句 2.实验步骤和实验结果。 3.实验中的问题和提高。 4.SQL Server中有的安全性功能。 五、注意事项 1.用户、角色和权限的职能,以及它们之间的关系。

SQL Server 2008 数据库引擎优化顾问介绍

SQL Server 2008数据库引擎优化顾问介绍 1数据库引擎优化顾问概述 借助MicrosoftSQLServer数据库引擎优化顾问,您不必精通数据库结构或深谙MicrosoftSQLServer,即可选择和建立索引、索引视图和分区的最佳集合。 数据库引擎优化顾问分析一个或多个数据库的工作负荷和物理实现。工作负荷是对要优化的一个或多个数据库执行的一组Transact-SQL语句。在优化数据库时,数据库引擎优化顾问将运用跟踪文件、跟踪表或Transact-SQL脚本作为工作负荷输入。可以在SQL Server Management Studio中运用查询编辑器建立Transact-SQL脚本工作负荷。可以通过运用SQL Server Profiler中的优化模板来建立跟踪文件和跟踪表工作负荷。有关运用SQL Server Profiler建立可用作工作负荷的跟踪的信息,请参阅SQL ServerProfiler简介。 对工作负荷执行分析后,数据库引擎优化顾问会建议您添加、删除、或修改数据库中的物理设计结构。此顾问还可针对应收集哪些统计信息来备份物理设计结构提出建议。物理设计结构包括聚集索引、非聚集索引、索引视图和分区。数据库引擎优化顾问会推选一组物理设计结构,以降低工作负荷的开销(由查询优化器估计)。 数据库引擎优化顾问的优化功能 数据库引擎优化顾问具备下列功能: *通过运用查询优化器分析工作负荷中的查询,推选数据库的最佳索引组合。 *为工作负荷中引用的数据库推选对齐分区或非对齐分区。 *推选工作负荷中引用的数据库的索引视图。 *分析所建议的修改将会产生的影响,包括索引的运用,查询在表之间的分布,以及查询在工作负荷中的性能。 *推选为执行一个小型的疑问查询集而对数据库执行优化的要领。

SQL数据库图书管理系统(完整代码)

作品设计报告书题目:《图书管理系统》 班级网络2012-1班 学号 姓名 课程名称数据库应用技术 指导教师

目录

数据库课程设计报告书 一、设计目标 1.掌握计算机管理信息系统设计的一般方法,主要包括系统分析、系统设计的组织 和实施。 2.关系型数据库管理系统的编程技术,并能独立完成一般小系统的程序设计、调试 运行等工作。 3.培养把所学知识运用到具体对象,并能求出解决方案的能力。 二、数据库存储设计指导思想 在数据库存储设计的无数选择中,简单是系统架构师和DBA 的秘密武器。 简单,有时候就来自于对一个特定的表或表空间没有选择最优I/O 特性,总有这么一种可能,一个富有经验的DBA 拥有高超的存储技能并可以没有时间限制的去为一个非常重要的表或者索引配置一个存储。然而这样做的问题是,就算能达到设计的最佳性能,为了维护原始对象,这也经常造成对一个系统的管理变得更加复杂。好的数据库存储设计的要点是,在一个动态系统上,实现所有目标应该是最初的系统设计的一部分,并应该在数据库运行过程中长期进行。这篇文档简单的最佳实践描述达到了这些目标并且几乎没有性能损失。 三、任务 角色:读者、图书馆馆员、系统管理员;基础数据:读者信息、图书信息、操作员信息;业务数据:借还书记录登记、罚款登记;统计数据:书籍借阅情况统计或读者借阅情况统计。基本要求:利用数据库技术,完成基础数据和业务数据的储存和操作,数据库设计合理1.设计报告:含E-R图、数据字典、关系模式、关系实例、查询描述、关系代数、SQL 实现的查询语言及查询结果。 2.上机实现。

1.问题描述 1.1背景 随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。 另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。 提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校,社会服务。 1.2数据需求 图书馆管理信息系统需要完成功能主要有: 1. 读者基本信息的输入,包括借书证编号、读者姓名、读者性别。 2.读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。 3.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。 4.书籍类别信息的查询、修改,包括类别编号、类别名称。 5.书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。 6.书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期登记日期等。 7.借书信息的输入,包括读者借书证编号、书籍编号、借书日期。 8.借书信息的查询、修改,包括借书证编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。 9.还书信息的输入,包括借书证编号、书籍编号、还书日期。 10.还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。 11.超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。

数据库实验心得

数据库实验心得 我在sql server 索引基础知识系列中,第一篇就讲了记录数据的基本格式。那里主要讲解的是,数据库的最小读存单元:数据页。一个数据页是8k大小。 对于数据库来说,它不会每次有一个数据页变化后,就存到硬盘。而是变化达到一定数量级后才会作这个操作。这时候,数据库并不是以数据页来作为操作单元,而是以64k 的数据(8个数据页,一个区)作为操作单元。 区是管理空间的基本单位。一个区是八个物理上连续的页(即 64 kb)。这意味着 sql server 数据库中每 mb 有16 个区。 为了使空间分配更有效,sql server 不会将所有区分配给包含少量数据的表。sql server 有两种类型的区:统一区,由单个对象所有。区中的所有 8 页只能由所属对象使用。 混合区,最多可由八个对象共享。区中八页的每页可由不同的对象所有。 通常从混合区向新表或索引分配页。当表或索引增长到8 页时,将变成使用统一区进行后续分配。如果对现有表创建索引,并且该表包含的行足以在索引中生成 8 页,则对该索引的所有分配都使用统一区进行。

为何会这样呢? 其实很简单: 读或写 8kb 的时间与读或写 64 kb的时间几乎相同。 在 8 kb 到 64 kb 范围之内,单个磁盘 i/o 传输操作所花的时间主要是磁盘取数臂和读/写磁头运动的时间。 因此,从数学上来讲,当需要传输 64 kb 以上的 sql 数据时。 尽可能地执行 64 kb 磁盘传输是有益的,即分成数个64k的操作。 因为 64 kb 传输基本上与 8 kb 传输一样快,而每次传输的 sql server 数据是 8 kb 传输的 8 倍。 我们通过一个实例来看有and 操作符时候的最常见的一种情况。我们有下面一个表。 create table [dbo].[member]( [member_no] [dbo].[numeric_id] identity(1,1) not null, [lastname] [dbo].[shortstring] not null, [firstname] [dbo].[shortstring] not null, [middleinitial] [dbo].[letter] null, [street] [dbo].[shortstring] not null, [city] [dbo].[shortstring] not null, [state_prov] [dbo].[statecode] not null, [country] [dbo].[countrycode] not null, [mail_code] [dbo].[mailcode] not null, [phone_no]

数据库的安全性实验报告

西安邮电大学 (计算机学院) 课内实验报告 实验:数据库的安全性实验 课程:数据库原理及应用B 班级:网络1203 学号: 学生姓名: 任课教师:孟彩霞

一、实验目的 (1)理解SQL Server验证用户身份的过程,掌握设置身份验证模式的方法(2)理解登录帐号的概念,掌握混合认证模式下登录帐号的建立与取消方法 (3)掌握混合认证模式下数据库用户的建立与取消方法 (4)掌握数据库用户权限的设置方法 (5)理解角色的概念,掌握管理角色技术 二、实验内容 (1)在企业管理器中打开“SQL Server属性(配置)”对话框,设置身份验证模式为“SQL Server”和“Windows”模式(即混合模式)。 (2)创建、管理数据库服务器的登录账号。 (3)创建、管理数据库用户。 (4)管理用户权限。 (5)创建、管理数据库角色。 三、实验环境 Windows7 SQL SERVER 2012 四、实验前准备 课本 上机使用代码 五、实验步骤 1.在企业管理器中打开“SQL Server属性(配置)”对话框,设置身份验证模式为“SQL Server”和“Windows”模式(即混合模式)。 2.创建、管理数据库服务器的登录账号。用T-SQL语句创建、查看、删除登录账号。 创建一个名为Student、密码为111、使用的默认数据库为JWGL的登录账号。 EXEC sp_addlogin ‘student’,’111’,’JWGL’查看登录账号EXEC sp_helplogins 删除登录账号为EXEC sp_droplogins ‘student’ 3.创建、管理数据库用户。 用T-SQL语句创建、查看、删除数据库用户。 为数据库JWGL创建一个用户user1,该用户登录SQL Server服务器的账号为wang,登录密码为secret,相应的程序代码为: EXEC sp_addlogin ‘wang’, ‘secret’, ‘JWGL’ GO EXEC sp_grantdbaccess ‘wang’, ‘user1’查看数据库用户为EXEC sp_helpuser 删除数据库中的“wang”用户为EXEC sp_revokedbaccess ‘wang’ 4.管理用户权限。 使用T-SQL语句完成第3章习题12中(1)~(3)的用户管理和用户权限管理。企业管理器: (1)允许用户李明对Orders表进行插入、删除操作。 GRANT INSERT ,DELETE ON Orders TO ‘李明’

SQL数据库系统期末试题

. 蚌埠学院2013—2014学年第一学期 《SQL 数据库系统》期末考试试题(A ) 注意事项:1、适用班级:11计算机科学与技术(本1、本2、本3班) 2、本试卷共2页。满分100分。 3、考试时间120分钟。 4、考试方式:闭卷 一、选择题(每小题1分,共25分) 1、在SQL SERVER 中,使用update 语句更新数据库表中的数据,以下说法正确的是( b )。 (A )每次只能更新一行数据 (B )每次可以更新多行数据 (C )如果没有数据项被更新,将提示错误信息 (D )更新数据时,必须带有WHERE 条件子句 2、在SQL Server 2008中,要防止大于100的数据被保存到int 类型的列,可以使用( d )。 (A )主键约束 (B )限制约束 (C )外键约束 (D )检查约束 3、在SQL Server 2008 中,有students(学生)表,包含字段:Sid(学号),SName(姓名),Grade(成绩)。现要将所有学员的成绩加10分。下列SQL 语句正确的是( d )。 (A )update students set Grade=Grade+10 where Sid=1 (B )update * set Grade=Grade+10 (C )update * from students set Grade=Grade=Grade+10 (D )update students set Grade=Grade+10 4、在SQL Server 2008 中,有一个product(产品)表,包含子段:pname(产品名称),要从此表中筛选出产品名称为“苹果”或者“香蕉”的记录,下列语句正确的是( c )。 (A ) SELECT*FROM product ON pname=’苹果’OR pname=’香蕉’ (B ) SELECT*FROM product ON pname=’苹果’ AND pname=’香蕉’ (C ) SELECT*FROM product WHERE pname=’苹果’ OR pname=’香蕉’ (D ) SELECT*FROM product WHERE pname=’苹果’ AND pname=’香蕉’ 5、在SQL Server 2008中,附加数据库操作是指( b )。 (A )把SQL Server 数据库文件保存为其他数据库文件。 (B )根据数据库物理文件中的信息,把数据库在SQL Server 2008中恢复。 (C )把所有该数据库表的数据清空。 (D )把数据库删除掉。 6、在SQL Sever 2008中,假设表 users 包含主键列 id ,那么执行“Update users SET id=20 WHERE id=30”,执行的结果可能有( c )。 (A )如果表中含有id 为30的记录,但不包含id 为20的记录,则更新失败。 (B )执行出错,因为主键列不可以被更新。 (C )如果表中同时含有id 为20和id 为30的记录,则更新失败。 (D )如果表中不包含id 为20 和id 为30 的记录,则更新一行记录。 7、在SQL Sever 2008中,查找 student 表中所有身份证号码CardNo 的前三位为010或020的记录,以下语句正确的是( c )。 (A )select * from student where cardno like ‘010%’ and cardno like ‘020%’ (B )select * from student where cardno like ‘010%’ or ‘020%’ (C )select * from student where cardno like ‘0[1,2]0%’ (D )select * from student where cardno like ‘0(1,2)0%’ 8、在SQL Sever 2008中,学生表student 中包含以下字段:学生编号 sid (主键),学生姓名 sName ,现在查询所有姓名重复的记录,以下语句正确的是( b )。 (A )select * from student where count(sid)>1 (B )select a. * from student a, student b where a.sname=b.sname (C )select a.* from student a, student b where a.sname=b.sname and a.sid<>b.sid (D )select * from student group by sName where count(sid)>1 9、在SQL Sever 2008 中,有系统数据库和用户数据库,下列不属于系统数据库的是( d )。 (A ) master (B ) model (C ) msdb (D ) pubs 10、在SQL Server 2008中,外键用于将一个表中的列与另一表中的列关联起来,为了确保引用的完整性,要求( a )。 装 订 线 内 不 要 答 题

数据库实验报告

北京科技大学实验报告 课程:数据库技术与应用实验名称:数据库查询 系别:通信工程实验日期:2015年12月9日 专业班级提交日期: 学号:姓名: 教师审批签字: 实验2 数据库和表的创建及维护 一.实验目的 1.了解Microsoft SQL Server 2008数据库的逻辑结构和物理结构。 2.熟练掌握在Microsoft SQL Server 2008 环境下建立数据库,修改数据库和删除数据库。 3.熟练掌握在Microsoft SQL Server 2008 环境下建立和修改数据表并向表中插入数据,操作的同时理解数据库,数据表,属性,关键字等关系数据库中的基本概念。 4.掌握在Microsoft SQL Server 2008 的“对象资源管理器”中对数据表中的数据进行更新操作。 5.了解各种约束的作用,了解Microsoft SQL Server 2008 的常用数据类型。 6.掌握使用Transact-SQL语句创建数据库和表 7.掌握Transact-SQL中用于对表数据进行插入,修改和删除命令的用法。 8.熟悉使用Microsoft SQL Server 2008d的“对象资源管理器”进行分离数据库,附加数据库,备份数据库和还原数据库等操作。 二.实验步骤 1.在Microsoft SQL Server 2008 的“对象资源管理器”中创建StudentMIS数据库。 SQL语句: Create database studentmis On (name=stdentmis,filename=’c:\programfiles\microsoftsqlserver\mssql10.mssqlserver\mssql\data \studentmis.mdf’,size=100mb,maxsize=1gb,filegrowth=10%) Log on (name=studentmis_log’, filec:\programfiles\microsoftsqlserver\mssql10.mssqlserver\mssql\data\studentmis.mdf’,size=10 0mb,maxsize=50mb,filegrowth=5mb) go

数据库原理实验报告_实验三_数据完整性与安全性控制

实验内容、步骤以及结果 1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。 (18分,每小题3分) (1) 非空约束:为出生日期添加非空约束。 非空约束:取消表S中sbirth的勾。可能需要重建表。 (2) 主键约束:将学号(sno)设置为主键,主键名为pk_sno。 设主键:单击数据库Student-->单击表-->单击S-->右击sno-->选择修改命令-->对话框中右击sno-->选择设置主键'>修改主键名为pk_sno '-->保存

(3)唯一约束:为姓名(sname)添加唯一约束(唯一键),约束名为uk_sname 。 唯一约束:单击数据库Student-->单击表--> 单击S-->右击sname-->选择修改’ 命令T右击 sname-->选择索引和键命令--> 打开索引和键框图--> 添加--> 是否唯一改为是--> 名称改为us sname '-->关闭。

(4)缺省约束:为性别(ssex)添加默认值,其值为男 设默认约束:单击数据库Student宀单击表宀单击右击sno^选择修改命令宀单击cno-->在默认值栏输入男’保存

D62.s1udent - Diagram_0* D62.sludent - dbo.S* SQLQuery5.sql - D... (D62\A^m i n (52J)* 列容 埶据类型 允祥值 Q 5TI0 Ctiar(lO) n sname nvarchar (20) a 卜:S5SX nchai ■⑵ 團 sbirtti date □ adept nv ar char (20) sPhoneNo ctiar(LQ) @] 数捐类型 允傑Mdl 值 曰表设计器 RowGuid E 标识魁 不用于复制 大小 (5) CHECK 约束:为SC 表的成绩(grade)添加CHECK 约束,约束名为ck grade ,其 检查条件为:成绩应该在0-100之间。 ffin har 妊 2 Nnrh 昙否否否二

01第一讲数据库及Microsoft SQL Server简介

第一讲数据库及Microsoft SQL Server 简介 1.1几大数据库简介 (1)ORACLE 是甲骨文公司的旗舰产品。ORACLE是以高级结构化查询语言(SQL)为基础的大型关系数据库。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。目前已经发展到11g的版本。从ORACLE7.X以来引入了共享SQL和多线索服务器体系结构。这减少了ORACLE的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。并具有良好的移植性。 (2)IBM公司的DB2通用数据库为企业提供领先的商业解决方案。Universal 是其最新版本。它与IBM的Web Sphere一起构筑了强大的现代电在商务的平台。(3)Informix数据库,目前也是归属于IBM旗下。在我国的80%的银行和电信产业使用的是Informix数据库,它是以高效安全著称。它一般是在UNIX或Linux 平台下运行,目前的版本是Informix Dynamic Server 2000版本。 (4)Sysbase数据库是Sysbase 公司推出的大型关系数据库。支持多用户并发事务处理。 (5)Interbase是Borland公司发布的,一个个高性能,强大的跨平台数据库系统,对系统要求较低。 1.2 SQL Server 2000概述 SQL Server 2000是微软公司出品的一个大型关系数据库管理系统(RDBMS),它不仅有卓越的性能,而且有先进的管理功能,支持XML语言。它还可以与Windows 2000操作系统整合,充分发挥Windows 2000操作系统的强大功能。 (1) 数据库:我们把一些由行和列组成的二维表格存放在数据库文件当中,这些文档由专门的数据库管理系统负责读取,解析和管理。数据库中数据结构比普通数据文件中的数据结构化程度更高。比如:不存在用户或应用程序必须同时更新的重复数据。可以自行组织数据表与表之间的关系。(2) 关系数据库:在数据库领域中存在着多种的数据组织方式。关系型数据库是效率最高的一种数据库系统,在一个关系数据库中,相同逻辑结构的数据被归类分别存放到单独的表中,这些存放不同数据的表格根据一定的规范,用“关系”连接起来,形成了一个整体。 (3) SQL语言:在关系数据库中可以使用多种不同的数据库语言,但是其中最常用的是SQL(结构化查询语言)。SQL Server 2000支持由美国国家标准协会(ANSI)和国际标准协会(ISO)在1992年公布的SQL标准(Entry Level SQL-92)。SQL Server 2000 支持的SQL版本称为:Transact-SQL。(4) XML:XML(可扩展标记语言)是在Internet上新兴的一种标准格式语言。 大多数SQL语句把运行的结果返回到一个关系结果集中,而SQL Server 2000支持把SQL语句的运行结果直接作为一个XML文档返回。 1.2.1 SQL Server 2000特性

MySQL数据库系统及应用综合练习

一、单项选择题(只有一个正确答案) 【1】执行语句“SELECT '2008-01-20'+ INTERVAL 2 DAY; ”结果为 A: 2008-01-22 B: 2010-01-20 C: 2008-02-11 D: 2008-03-20 答案: A 【2】下列哪个是不正确的MySQL的变量命名方式 A: _name B: n$ame C: name D: name! 答案: D 【3】字符串‘hel’lo’输出结果为 A: hel'lo B: 'hello' C: hel\'lo D: 'hel lo' 答案: A 【4】关系数据库模型是以下哪种方式组织数据结构 A: 树状 B: 文本 C: 二维表 D: 网状 答案: C 【5】使用下列哪个语句可以删除表中所有数据,但保留表结构 A: truncate table B: rename table C: delete D: drop talbe 答案: A 【6】E-R图设计属于()。 A: 概念结构设计 B: 物理结构设计 C: 逻辑结构设计 D: 需求分析设计 答案: B 【7】执行语句“GREATEST(10,9,128,1)”结果为()。 A: 9

B: 10 C: 128 D: 1 答案: C 【8】在一个关系中,若有这样一个属性存在,它的值能唯一地标识关系中的每一个元组,则称这个属性为 A: 数据项 B: 候选码 C: 主键 D: 主键值 答案: C 【9】数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作。这种功能称为()。 A: 数据控制功能 B: 数据操纵功能 C: 数据管理功能 D: 数据定义功能 答案: B 【10】1999年10月1日在mysql中表示方法错误的是: A: "1999-10-01" B: "1999%10%01" C: "1999\10\01" D: "1999/10/01" 答案: D 【11】两个表中的行按照给定的条件进行拼接而形成新表的运算为 A: 连接 B: 投影 C: 集合 D: 选择 答案: A 【12】向表中插入一个行新的纪录的命令为 A: replace into B: insert into C: replace from D: insert from 答案: B 【13】\n在MySQL中表示 A: " B: 退格符 C: 回车符

数据库实验期末总结以及心得

数据库原理实验学期总结 班级 摘要 学习数据库已经有一个学期的时间,经过一个学期的SQL Server 2000课程的学习,老师在课堂上耐心、细致的讲解,以及内容详细、层次鲜明、易于记忆和理解的教学课件,让我了解了SQL Server 2000的基础知识,学会了创建数据库以及对数据库操作的一些基本应用,现就所学到知识作出以下的学习心得总结: SQL Server 是一个关系数据库管理系统,SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的一个版本,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft WindowsXP 的大型多处理器的服务器等多种平台使用。 一、数据库实验的主要意义的目的 数据库是数据管理的最新技术,是计算机科学的重要分支。目前,对数据库各种模型的研究以及理论上的探讨都还在蓬勃开展,其应用也从一般管理扩大到计算机辅助设计,人工智能以及科技计算等领域。数据库实验有利于同学理解书中复杂抽象的理论,让同学建立直观印象,加强实践操作技能,加深对理论的理解。 二、概述本学期的实验内容和目的 本学期实验内容:1数据库的创建和管理2 数据表的创建和管理3 表中数据的操作4 视图的创建和使用5索引的创建和使用6 存储过程的创建和使用7 触发器的创建和使用目的:掌握使用SQL Server 2005 开发数据库系统的方法

三、总结 1.我的实验完成的实际情况 数据库实验报告(一) 实验内容: 1.在STUDENT数据库中创建一个名为t_course(课程信息)的表,要求如下:c_number char(10) primary key, c_name char(30), hours int ,credit real;

数据库系统综合概论

第一章数据库系统概论 本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。重点介绍关系数据库的有关知识。 1.1 数据管理技术发展史 随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。数据管理则是指对数据的组织、编码、分类、存储、检索和维护,它是数据处理的一个重要内容中心。数据处理工作由来以久,早在1880 年美国进行人口普查统计时,就已采用穿孔卡片来存储人口普查数据,并采用机械设备来完成对这些普查数据所进行的处理工作。电子计算机的出现以及其后其硬件、软件的迅速发展,加之数据库理论和技术的发展,为数据管理进入一个革命性阶段提供有力的支持。根据数据和应用程序相互依赖关系、数据共享以及数据的操作方式,数据管理的发展可以分为三个具有代表性的阶段,即人工管理阶段、文件管理阶段和数据库管理阶段。 【1 】人工管理阶段 这一阶段发生于六十年代以前,由于当时计算机硬件和软件发展才刚刚起步,数据管理中全部工作,都必须要由应用程序员自己设计程序完成去完成。由于需要与计算机硬件以及

各外部存储设备和输入输出设备直接打交道,程序员们常常需要编制大量重复的数据管理基 本程序。数据的逻辑组织与它的物理组织基本上是相同的,因此当数据的逻辑组织、物理组织或存储设备发生变化时,进行数据管理工作的许多应用程序就必须要进行重新编制。这样就给数据管理的维护工作带来许多困难。并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程序间的数据资源共享。存在着大量重复数据,信息资源浪费严重。【2 】文件管理阶段 这一阶段发生于六十年代,由于当时计算机硬件的发展,以及系统软件尤其是文件系统的出现和发展,人们开始利用文件系统来帮助完成数据管理工作,具体讲就是:数据以多种组织结构(如顺序文件组织、索引文件文件组织和直接存取文件组织等)的文件形式保存在外部存储设备上,用户通过文件系统而无需直接与外部设备打交道,以此来完成数据的修改、插入、删除、检索等管理操作;使用这种管理方式,不仅减轻进行数据管理的应用程序工作量,更重要地是,当数据的物理组织或存储设备发生变化时,数据的逻辑组织可以不受任何影响,从而保证了基于数据逻辑组织所编制的应用程序也可以不受硬件设备变化的影响。这样就使得程序和数据之间具有了一定的相互独立性。 但由于数据文件的逻辑结构完全是根据应用程序的具体要求而设计,它的管理与维护完全是由应用程序本身来完成,因此数据文件的逻辑结构与应用程序密切相关,当数据的逻辑结构需要修改时,应用程序也就不可避免地需要进行修改;同样当应用程序需要进行变动时,常常又会要求数据的逻辑结构进行相应的变动。在这种情况下,数据管理中的维护工作量也是较大的。更主要的是由于采用文件的形式来进行数据管理工作,常常需要将一个完整的、相互关联的数据集合,人为地分割成若干相互独立的文件,以便通过基于文件系统的编程来实现来对它们的管理操作。这样做同样会导致数据的过多冗余和增加数据维护工作的复杂性。例如人事部门、教务部门和医务部门对学生数据信息的管理,这三个部门中有许多数据是相同的,如姓名、年龄、性别等,由于是各部门均是根据自己的要求,建立各自的数据文件和应用程序,这样不仅造成了大量的相同数据重复存储,而且在修改时,常常需要同时修改三个文件中的数据项,如修改学生年龄,此外若需要增加一个描述学生的数据项,如通讯地址,那么所有的应用程序就必须都要进行相应的修改。除此之外,采用文件系统来帮助进行数据管理工作,在数据的安全和保密等方面,也难以采取有效的措施加以控制。 3 】数据库管理阶段 1在不断改进和完善文件系统的过程中,从六十年代后期开始,人们逐步研究和发展了以数据的统一管理和数据共享为主要特征的数据库系统。即在数据在统一控制之下,为尽可能多的应用和用户服务,数据库中的数据组织结构与数据库的应用程序相互间有较大的相对独立性等。与以往前数据管理方法和技术相比,利用数

相关文档
最新文档