实验6:SQL高级查询

实验6:SQL高级查询
实验6:SQL高级查询

实验六高级查询

【实验目的与要求】

1、熟练掌握IN子查询

2、熟练掌握比较子查询(尤其要注意ANY、ALL谓词如何用集函数代替)

3、熟练掌握EXISTS子查询(尤其是如何将全称量词和逻辑蕴含用EXISTS谓词代替)

4、熟练掌握复杂查询的select语句

【实验准备】

1.准备好测试数据

2.熟悉多表查询与嵌套查询的用法。

【实验内容】

5.1.嵌套子查询

以下实验在前面实验中创建的CPXS数据库中完成,请根据前面实验创建的表结构和数据,完成如下嵌套查询:

查询在2004年3月18日没有销售的产品名称(不允许重复)。

用IN子查询:

写出对应SQL语句并给出查询结果:

select distinct 产品名称

from CP

where 产品编号 not in

(

select 产品编号

from CPXSB

where 销售日期='2004-3-18'

);

用EXISTS子查询:

写出对应SQL语句并给出查询结果:

select distinct 产品名称

from CP

where 产品名称!=all

(

select 产品名称

from CP

where exists

(

select 产品编号

from CPXSB

where 销售日期!='2004-03-18' and

CP.产品编号=CPXSB.产品编号

)

)

查询名称为“家电市场”的客户在2004年3月18日购买的产品名称和数量。

用IN子查询:

写出对应SQL语句并给出查询结果:

select 产品名称,数量

from CPXSB left join CP on(CPXSB.产品编号=CP.产品编号)

where 客户编号 in

(

select 客户编号

from XSS

where 客户名称='家电市场'

)

and 销售日期='2004-03-18'

用EXISTS子查询:

写出对应SQL语句并给出查询结果:

select 产品名称,数量

from CPXSB left join CP on(CPXSB.产品编号=CP.产品编号)

where CPXSB.客户编号 =

(

select 客户编号

from XSS

where 客户名称='家电市场'

)

and exists

(

select distinct 产品名称

from CP

where 销售日期='2004-03-18' and

CP.产品编号=CPXSB.产品编号

)

查询销售量大于所有2004年3月18日销售的各产品销售数量的产品编号。

用ALL谓词:

写出对应SQL语句并给出查询结果:

select 产品编号

from CPXSB

where 数量>all(select 数量

from CPXSB

where 销售日期='2004-03-18'

)

用集函数:

写出对应SQL语句并给出查询结果:

select 产品编号

from CPXSB

group by 产品编号,数量

having 数量> (select max(数量)

from CPXSB

where 销售日期='2004-03-18'

)

查询购买了所有产品的客户的名称。

写出对应SQL语句并给出查询结果:

select 客户名称

from XSS

where not exists(

select 产品编号

from CP

where not exists(

select 客户编号

from CPXSB

where CP.产品编号=CPXSB.产品编号and CPXSB.客户编号=XSS.客户编号

)

)

5.2.集合操作

1. 准备工作

创建如下两表X和Y,并添加相应的值

图5-1 测试表X和Y 阅读并执行以下语句,理解其功能,给出运行结果。2. 集合并:union

执行以下语句:

请给出运行结果:

3. 集合交:intersect:

执行以下语句:

请给出运行结果:

5.3 以下操作请使用PUBS数据库中的数据表进行操作

1、查询PUBS数据库中的employee表中其出版社所在国家为’USA’的所有出版社员工的信息。

2、查询PUBS数据库中的SALES表中书籍出版时间pubdate在‘1991-10-1’以后的书籍的销售信息。

3、查询PUBS数据库中的titles表中书籍价格高于类别为‘business ’的任一书籍价格的所有书籍的信息。

4、查询PUBS数据库中的titles表中书籍价格高于类别为‘business ’的所有书籍价格的所有书籍的信息

SQL数据库实验报告 (1)

资源与环境科学学院实验报告 一、上机实习名称:SQL Server的安装及数据库的建立 二、实验目的: 1、通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。 2、熟悉对DBMS的操作 3、熟悉如何使用SSMS和SQL建立数据库和表,并加深对于完整性的理解。 三、实验内容: 1、根据安装文件的说明安装数据库管理系统。 2、学会启动和停止数据库服务,思考可以用哪些方式来完成启动和停止。 3、掌握管理工具的使用 (1)SQL Server Management Studio的使用 ?连接服务器的方法 ?查询分析器的使用 (2)配置管理器的使用 4、了解数据库系统的逻辑组件: 它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。今后将学习如何操作这些数据库对象。 5.在SSMS中创建数据库和表 四、实验步骤 1. SQL Server 2008的体系结构和特点介绍 SQL Server 是一个关系数据库管理系统。由微软公司2008年第三季度正式发布, SQL Server 2008是一个重大的产品版本,在安全性、可用性、易管理性、可扩展性、商业智能等方面有了更多的改进和提高,对企业的数据存储和应用需求提供了更强大的支持和便利,使得它成为迄今为止最强大和最全面的SQL Server版本。 SQL Server 2008 版本体系:根据不同的用户类型和使用需求,微软公司推出了5种不同的SQL Server版本,包括企业版(Enterprise)、标准版(Standard)、工作组版(Workgroup)、学习版(Express)和移动版(Compact)

数据库SQL实验题目

实验一数据定义操作 实验目的 1.掌握数据库和表的基础知识 2.掌握使用创建数据库和表的方法 3.掌握数据库和表的修改、查看、删除等基本操作方法 实验内容和要求 一、数据库的创建 在开始菜单中,启动SQl Server 程序中的“SQL Server Management Studio”,在对象资源管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager,要求如下表所示: Grademanager数据库参数表 参数参数值参数参数值 存储的数据文件路 径 D:\db\ 存储的日志文件路径D:\db\ 数据文件初始大小5MB 日志文件初始大小2MB 数据文件最大值20MB 日志文件最大值15MB 数据文件增长量原来10% 日志文件增长量2MB 二、表的创建、查看、修改和删除 1.表的创建 在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1)Student表的表结构 字段名称数据类型长度精度小数位数是否允许 Null值 说明 Sno Char 10 0 0 否学号,主码 Sname Varchar 8 0 0 是姓名 Ssex Char 2 0 0 是性别,取值:男或女 Sbirthday Date 8 0 0 是出生日期 Sdept Char 16 0 0 是系名 Speciality Varchar 20 0 0 是专业名 特别注意: 为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。

图1 设置性别的约束 (2)Course表(课程名称表)的表结构 字段名称数据类型长度精度小数位数是否允许Null值说明 Cno Char 5 0 0 否课程号,主码Cname Varchar 20 0 0 否课程名 (3)SC表(成绩表)的表结构 字段名称数据类 型 长 度 精 度 小数位 数 是否允许Null值说明 Sno Char 10 0 0 否学号,外码 Cno Char 5 0 0 否课程号,外码 Degree Decimal 5 5 1 是成绩,0~100之间 特别注意: ①为属性Degree 约束,可参照属性Ssex进行设置,“CHECK约束对话框”中的表达式为Degree>=1 And Degree<=100 ②为SC表设置外键Sno和Cno的方法: 右键单击表SC,选择“设计”命令,然后选择菜单“表设计器”中的“关系”命令,打开“外键关系”窗口,选择“添加”按钮,然后单击“表和列规范”后的按钮,按照图2进行设置,即可将SC表中的Cno属性设置为外键。按照相同的方法,将属性Sno也设置为外键。

数据库实验四:SQL数据查询

数据库实验四:SQL数据查询 一、实验目的与要求: 1.实验目的 熟练掌握SQL SELECT语句,能运用查询语句完成各种查询。 实验内容: 在实验三和实验四的基础上完成查询操作,将题目中的x, y等具体化: 1、一般简单查询 (1)不带条件的查询指定字段(考虑去掉和不去掉重复值两种情况)。 (2)查询某个表中的所有记录。 (3)使用单个条件的简单查询。 (4)使用多个条件(AND关系)的查询。 (5)使用多个条件(OR关系)的查询。 (6)使用多个条件(混合AND和OR关系)的查询。 (7)使用带NOT运算的查询。 (8)使用BETWEEN···AND···的查询。 (9)使用NOT···BETWEEN···AND···的查询。 (10)使用LIKE运算符的字符串匹配查询。 (11)使用LIKE运算符的模板匹配查询。 (12)查询空值和非空值的查询 (13)结果要求排序的查询 (14)查询结果按多列排序,并分别要求升序和降序的查询。 (15)使用TOP显示前若干记录的查询。 (16)使用TOP显示前若干记录的查询,如果有满足条件的并列记录一并显示。 2、连接查询 (17)两个关系的连接查询。

(18)带其他查询条件的两个关系的连接查询。 (19)多个关系(三个以上)的连接查询。 (20)两个关系的广义笛卡尔积运算结果。 (21)根据两个关系的广义笛卡尔积运算结果得到两个关系进行自然连接的结果。 (22)查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段。 (23)查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段,要求结果中列出所有教师信息(即包括不是任 何课程责任教师的教师信息)。 (24)查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段,要求结果中能够反映目前没有确定责任教师的 课程信息。 (25)查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段,要求结果中既能够反映目前不是责任教师的教 师信息,又能反映目前没有确定责任教师的课程信息。 提示:(22)~(25)分别用内连接、左连接、右连接完成,分析它们的效果。 3、嵌套查询(注意使用ANY、ALL和EXISTS) (26)使用IN运算的简单嵌套查询。 (27)使用NOT IN运算的简单嵌套查询。 (28)使用关系运算(如等于)的简单嵌套查询。 (29)使用ANY或SOME的简单嵌套查询。 (30)使用ALL的简单嵌套查询。 (31)查询院系名称含“计算机”、职称为教授、所负责教程为必修课的教师姓名、职称、课程名称和课程学时等信息(分别用嵌套查询和连接 查询完成,分析各自的效率)。 (32)设计两个内外层互相关的嵌套查询。

数据库实验四(含答案)

实验四使用SQL语句创建和删除数据库、表 一. 实验目的: 1、了解SQL Server 2005数据库的逻辑结构和物理结构。 2、掌握使用SQL 语句创建和删除数据库。 3、学会使用T-SQL语句创建表。 二. 实验准备 1.明确能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。 2.了解用SQL语句创建和删除数据库的基本语法。 3.是用查询分析器,完成用SQL语句创建和删除基本表。 三. 实验要求 1、熟练使用查询分析器进行数据库的创建和删除操作。 2、用查询分析器,完成用SQL语句创建和删除基本表。 3、完成实验报告。 四. 实验内容 一、数据库 1.以下是创建数据库userdb1的SQL语句, create database userdb1 on (name=userdb4_data,--数据文件的逻辑名称,注意不能与日志逻辑同名 filename='g:\xygl\userdb4.mdf' ,--物理名称,注意路径必须存在 size=5,--数据初始长度为5M maxsize=10,--最大长度为10M filegrowth=1)--数据文件每次增长1M log on ( name=userdb4_log, filename='g:\xygl\userdb4.ldf ' , size=2 , maxsize=5 , filegrowth=1) 运行上诉语句建立数据库userdb1

句,并建立“学生信息”数据库.(.mdf的名字可以修改) 3.数据库的修改(alter database 数据库名add file),将一个大小为10MB 的数据文件mrkj添加到userdb1的数据库中,该数据文件的大小为10MB,最大的文件大小为100MB,增长速度为2MB,物理地址与原有的mdf,ldf文件放在一起。 alter database 数据库名 add file() 注括号内格式同下: ( name=userdb4_log, filename='g:\xygl\userdb4.ldf ' , size=2 , maxsize=5 ,

SQL Server数据库及表的建立 实验要求和截图记录

实验一 SQL Server数据库及表的建立 1. 按下面要求创建一个名为companyinfo的数据库: 主要数据文件:逻辑文件名为companyinfo_data1,实际文件名为companyinfo_data1.mdf;初始容量为1MB,最大容量为10MB,递增量为1MB。 次要数据文件:逻辑文件名为companyinfo_data2,实际文件名为companyinfo_data2.mdf;初始容量为1MB,最大容量为10MB,递增量为1MB。 事务日志文件:逻辑文件名为companyinfo_log,实际文件名为companyinfo_log.ldf;初始容量为1MB,最大容量为10MB,递增量为1MB。 2. 在companyinfo数据库中创建名为“category”的类别表,名为“product”的产品信息表,名为“employee”的雇员表,名为“customer”的客户表和名为“p_order”的订单表。 类别表(以类别ID为主键) 产品信息表(以产品ID为主键,类别ID是与类别表的类别ID相联系的外键) 雇员表(以雇员ID为主键,且薪水不得低于1000元) 客户表(以客户ID为主键)

订单表(以订单ID为主键,产品ID,雇员ID,客户ID均为外键,分别与产品信息表、雇员表和客户表的主键相联系) 3.利用企业管理器和T-SQL语句分别实现上面的操作。 实验操作过程截图记录如下: 实验一 SQL Server数据库及表的建立 1,按要求创建一个名为companyinfo的数据库: 利用企业管理器创建:

2,在companyinfo数据库中创建名为“category”的类别表,名为“product”的产品信息表,名为“employee”的雇员表,名为“customer”的客户表和名为“p_order”的订单表。 类别表 产品信息表

(完整word版)SQL创建数据库实验

(1)创建一个jwglxt数据库,主数据文件逻辑名为jwglxt_data,物理文件名为 jwglxt_data.mdf,初始大小为10M,最大尺寸为无限大,增长速度为1M,日志文件得逻辑名为jwglxt_log,物理文件名为jwglxt_log.ldf,初始大小为1M,最大尺寸为5M,增长速度为1M. (1.1)图形化方法创建数据库

T-SQL语句和结果截图 (2)创建一个有三个文件组primary,my_dbfg1,my_dbfg2,一个事务日志文件mylog的数据库,数据库名为hfy。 Primary文件组包含数据文件my1,初始大小为10M,最大尺寸为50M,增长速度为15%, my_dbfg1文件组包含数据文件my2,初始大小为10M,最大尺寸为50M,增长速度为5M, my_dbfg2文件组包含数据文件my3,初始大小为10M,最大尺寸为50M,增长速度为5M, 日志文件得逻辑名 为mylog,初始大小为1M,最大尺寸为5M,增长速度为1M. CREATE DATABASE hfy

ON PRIMARY(NAME='my1', FILENAME='d:\my1.mdf', SIZE=10MB, MAXSIZE=50MB,FILEGROWTH=15% ), FILEGROUP my_dbfg1(NAME='my2', FILENAME='d:\my2.ndf', SIZE=10MB, FILEGROWTH=5MB, MAXSIZE=50MB), FILEGROUP my_dbfg2(NAME='my3', FILENAME='d:\my3.ndf', SIZE=10MB, FILEGROWTH=5MB, MAXSIZE=50MB) LOG ON (NAME='mylog', FILENAME='d:\mylog.ldf', SIZE=10MB, FILEGROWTH=5MB, MAXSIZE=50MB) GO

数据库实验六 Transact-SQL程序设计

南昌大学实验报告 ---实验六Transact-SQL程序设计学生姓名:丁金芝学号:6100511080 专业班级:管理科学与工程类112班实验类型:■验证□综合□设计□创新实验日期:实验成绩:_____ 一、实验目的 (1)掌握Transact-SQL的数据类型、常量变量、表达式等的概念和使用方法。 (2)掌握程序中注释的基本概念和使用方法。 (3)掌握程序中的流程控制语句的使用方法。 (4)掌握SQL Server 2005中常用函数的用法。 (5)掌握游标的概念和声明方法,以及使用游标进行数据的查询、修改、删除操作等。 二、实验内容与结果 (1)选择学生情况数据库,输入以下T-SQL代码。 DECLARE @stu_name varchar(10) SELECT @stu_name=姓名 FROM 学生 WHERE 姓名LIKE '张%' SELECT @stu_name 观察显示的结果,与学生表中数据进行比较,@stu_name赋值的是SELECT 结果集中的哪个数据?

(2)定义int型局部变量@grademax、@grademin、@gradesum,在学期成绩中查找最高分、最低分和总分,分别赋给@grademax、@grademin和@gradesum,并显示。 (3)使用SET命令将某个查询结果集记录数目赋值给int型局部变量@row。

(4)以下代码在课程注册表中插入新记录: DECLARE @intCId int,@intErrorCode int INSERT INTO 课程注册(课程编号,课程名称,学分) V ALUES('0006','VB程序设计',2) SELECT @intCId=@@identity,@intErrorCode=@@error SELECT @intCId,@intErrorCode 将该代码段连续执行两次,观察两次显示的信息及课程注册表中数据的变化,为什么前后两次执行时显示的信息会不同? (5)在学生情况数据库的学生表中,以“性别”为分组条件,分别统计 男生和女生人数。 (6)在学期成绩中,使用适当函数找出“高等数学”课程的最高分、最 低分和平均分。 (7)定义一个datetime型局部变量@studate,以存储当前日期。计算学生 表中的学生的年龄,并显示学生的姓名、年龄。 (8)运行以下代码,写出运行结果。 DECLARE @a int,@b int SET @a=168 SET @b=73 SELECT@a&@b,@a|@b,@a^@b

SQL数据库实验报告 实验二

实验2 SQL Server数据库的管理 1.实验目的 (1)了解SQL Server 数据库的逻辑结构和物理结构的特点。 (2)掌握使用SQL Server管理平台对数据库进行管理的方法。 (3)掌握使用Transact-SQL语句对数据库进行管理的方法。 2.实验内容及步骤 (1)在SQL Server管理平台中创建数据库。 ①运行SQL Server管理平台,在管理平台的对象资源管理器中展开服务器。 ②右击“数据库”项,在快捷菜单中选择“新建数据库”菜单项。在新建数据库对话框的数据库名称文本框中输入学生管理数据库名studentsdb,单击“确定”按钮。 (2)选择studentsdb数据库,在其快捷菜单中选择“属性”菜单项,查看“常规”、“文件”、“文件组”、“选项”、“权限”和“扩展属性”等页面。 (3)打开studentsdb数据库的“属性”对话框,在“文件”选项卡中的数据库文件列表中修改studentsdb数据文件的“分配的空间”大小为2MB。指定“最大文件大小”为5MB。修改studentsdb数据库的日志文件的大小在每次填满时自动递增5%。 (4)单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL 语句CREATE DA TABASE创建studb数据库。然后通过系统存储过程sp_helpdb查看系统中的数据库信息。 (5)在查询设计器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。 (6)在查询设计器中为studb数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。 (7)使用SQL Server管理平台将studb数据库的名称更改为student_db。 (8)使用Transact-SQL语句DROP DATABASE删除student_db数据库。 3.实验思考 (1)数据库中的日志文件是否属于某个文件组? (2)数据库中的主数据文件一定属于主文件组吗? (3)数据文件和日志文件可以在同一个文件组吗?为什么? (4)删除了数据库,其数据文件和日志文件是否已经删除?是否任何人都可以删除数据库? (5)能够删除系统数据库吗?

sql数据库实验报告

数据库设计与管理 实验报告 班级:120506 学号:XXXXXXXX 姓名:XXX

实验一 一、实验目的 1.了解SQL Server 2000中数据库的组成; 2.熟练创建、管理数据库和事务日志。 3.熟练掌握创建、修改和删除表的方法; 4.掌握向表中添加记录、修改记录及删除记录的方法; 二、实验内容 1.在D盘或E盘建立以学生名命名的文件夹,如图1所示。 在E盘建立文件夹 2.分别使用企业管理器、CREATE DATABASE命令两种方法创建数据库和事务日志。要求如下: 数据库名字为S ale;数据文件初始大小为3MB,最大为10MB,文件增量为1MB;事务日志初始大小为2MB,最大为15MB,文件增量为1MB。 用企业管理器创建数据库创建数据文件 创建事务日志

CREATE DA TABASE创建数据库和事务日志 3.向Sale中添加数据文件、日志文件(要求与上同);CREATE DATABASE Sale 添加数据文件添加日志文件 4.向Sale中添加新文件组,向新文件组中添加一个数据文件(要求与上同);

向Sale中添加新文件组向文件组中添加数据文件5.删除后添加的数据文件、日志文件及文件组; 删除添加的数据文件删除添加的日志文件

删除文件组 6.分别使用企业管理器及CREATE TABLE 在S ale数据库中创建如下表: 客户表(Customer) 产品表(P roduct) 入库表(ProIn)销售表(ProOut) 7.在企业管理器中给Customer、P roduct、ProOut表中输入记录,并练习记录的修改及删除

SQL数据库_实验09

实验九数据完整性约束实现 姓名:学号: 专业:网络工程班级: 1 同组人:无实验日期:2012/4/13 【实验目的与要求】 1.熟练掌握实体完整性的实现。 2.熟练掌握参照完整性的实现。 3.熟练掌握域完整性的实现。 【实验内容与步骤】 实验准备:对于CPXS数据库,若在CP表、CPXSB表和XSS表上已有约束,请先删除之。 9.1.实体完整性的实现 (1) 对CP表,定义主键约束(用企业管理器实现)。 写出相应过程: 在cp表上右击鼠标,点击修改,然后选择列名,右击鼠标,点击设置主键。 测试:试着对CP表插入一条与原表中数据行具有相同主键值的数据。 给出测试结果:

(2)对CPXSB表、XSS表,定义主键约束(用SQL语句实现,写出相应语句)。 给出相应的SQL语句: alter table xss add constraint xsskey primary key(客户编号); alter table cpxsb add constraint cpxsbkey primary key(产品编号,客户编号); 给出测试结果: 9.2.参照完整性的实现 (1)利用企业管理器建立CP表与CPXSB之间的参照关系,当对主表CP表进行更新和删除操作时,从表CPXSB采用NO ACTION方式,写出其过程。 给出相应的过程:

(1)新建数据库关系图,添加cp表和cpxsb表,创建外间关系,将insert和update规范 中的更新规则和删除规则都设置为无操作。 (2)sql语句 alter table cpxsb add constraint cpxsbkey1 foreign key(产品编号)references cp(产品编号) on delete no action on update no action; 测试:试着删除主表中与从表有关联的一条记录,而后分别查看主表和从表中数据记录,给出测试结果。 将cp中产品编号为100004的一行删除,提示拒绝删除

SQL Server数据库的管理(实验报告1) 数据库的管理

长沙理工大学 计算机与通信工程学院 实验报告 课程名称数据库技术与应用 实验项目名称SQL Server数据库的管理 班级 学号姓名 实验日期 2018 年 09 月 29 日指导教师签字罗永红

一﹑实验目的 (1)了解SQL Server数据库的逻辑结构和物理结构的特点; (2)掌握使用SQL Server管理平台对数据库进行管理的方法; (3)掌握使用Transact-SQL语句对数据库进行管理的方法。 二﹑实验平台 操作系统:Windows xp DBMS:SQL Server 2008 三﹑实验内容和步骤 (1)在SQL Server管理平台中创建数据库。 ①运行SQL Server管理平台,在管理平台的对象资源管理器中展开服务器。 ②右击“数据库”项,在快捷菜单中选择“新建数据库”菜单项。在新建数据库对话框的数据库文件名称文本框中输入学生管理数据库名studentsdb,单击“确定”按钮。 (2) 选择studentsdb数据库,在其快捷菜单中选择“属性”菜单项,查看“常规”、“文件”、“文件组”、“选项”、“权限”和“扩展属性”等页面。 (3) 打开studentsdb数据库的“属性”对话框,在“文件”选项卡中的数据库文件列表中修改studentsdb数据库文件的“分配的空间”大小为5MB,指定“最大文件大小”为10MB,修改studentsdb 数据库的日志文件的大小在每次填满时自动递增5%。 (4) 单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL语句Create database创建studb数据库。然后通过系统存储过程sp_helpdb查看系统中的数据库信息。 (5) 在查询设计器中使用Transact-SQL语句Alter database修改studb数据库的设置,指定数据文件大小为8MB,最大文件大小为20MB,自动递增大小为1MB。 (6) 在查询设计器中为studb数据库增加一个日志文件,命名为studb_log2,大小为5MB,最大文件大小为10MB。 (7) 使用SQL Server管理平台将studb数据库的名称更改为student_db。 (8) 使用Transact-SQL语句drop database删除student_db数据库。

SQL-SERVER数据库实验报告(详细)

数据库原理及应用实验报告 学号:姓名: 实验1 一、实验目的: 熟悉SQL Server使用界面,掌握使用SSMS和SQL语句创建并设置数据库。 二、实验原理: 1.使用SSMS创建数据库 2.创建数据库语句: CREATE DATABASE 数据库名 [ON [PRIMARY] //指定一个文件为主要文件 [<文件格式>[,…n]] [,<文件组格式>[,…n]] ] [LOG ON {<文件格式>[,…n]}] <文件格式>::= ([NAME=逻辑文件名,] FILENAME=‘操作系统下的文件名和路径’ [,SIZE=文件初始容量] [,MAXSIZE={文件最大容量|UNLIMITED}] [,FILEGROWTH=递增值])[,…n] <文件组格式>::=FILEGROUP 文件组名<文件格式>[,…n] 3.修改数据库语句: ALTER DATABASE 数据库名 {ADD FILE <文件格式>[,…n] [TO FILEGROUP 文件组名] |ADD LOG FILE<文件格式>[,…n] |REMOVE FILE 逻辑文件名 |ADD FILEGROUP 文件组名 |REMOVE FILEGROUP 文件组名 |MODIFY FILE<文件格式> |MODIFY FILEGROUP 文件组名文件组属性} ::= (NAME=逻辑文件名 [,FILENAME=‘实际文件名和路径’] [,SIZE=容量] [,MAXSIZE={最大容量|UNLIMITED}] [,FILEGROWTH=递增量]) 三、实验内容: 1. 使用SQL语句完成下题 (1)使用CREATE DATABASE语句创建一个名为“st”数据库,要求①主要数据文件:逻辑文件名为“stdata1”,实际文件名为“stdata1.mdf”②事务日志文件:逻 辑文件名为“stlog1”,实际文件名为“stlog1.ldf”③初始容量均为3MB,最 大容量均为10MB,递增量均为1MB。

数据库SQL实验操作答案

1、 创建数据库: 创建一个教学管理数据库,以自己的名字拼音首字母+下划线+SC 作为库名(如名字叫张三,则:ZC_SC ), (1)确定数据库名称;数据库用于学生管理,命名为如ZS_SC (2)确定数据库的位置;要求:数据文件和日志文件分别存储在E 盘自己的目录下。 (3)确定数据库的大小;根据实际的数据量确定数据文件的初始大小为30MB ,日志文件的初始大小为3MB 。 (4)确定数据库的增长;根据实际情况,确定数据文件按20%增长,日志文件按1MB 增长。 请利用查询分析器(Query Analyzer ),使用SQL 语句指定参数创建数据库,给出实现代码和截图。 2 、 创建基本表:(注意:请在表名前加上自己的姓名拼音的首字母,主键前加上自己的姓 名拼音的首字母,例如张三为ZC_) 其描述的信息有:学生信息、课程信息、教师信息、学生选课成绩、授课信息、班级信息、系部信息、专业信息。 创建:student 表(学生信息表)、course 表(课程信息表)、teacher 表(教师信息表)、student _course 表(学生选课成绩表)、teacher_course 表(教师上课课表)等。 请利用查询分析器,使用SQL 语句将下面各表建立到教学管理数据库中。写出SQL 语句(注意级联删除设置),查看各数据表之间的关系,画出实体关系图(ER 图)。

( cyrs_no char(8)primary key, sname char(8)not null, sex char(2), sbirthday smalldatetime, dno char(6), spno char(8), class_no char(4), foreign key(dno)references cyr_department(cyr_dno), foreign key(spno)references cyr_speciality(cyr_spno) ) (2)创建Course表 ( cyr_cno char(10)primary key, cname char(20)not null, spno char(8), ctno tinyint, lecture tinyint, experiment tinyint, semester tinyint, credit tinyint, foreign key(spno)references cyr_speciality(cyr_spno) )

SQL数据库系统实验报告(含代码、截图)

设有一学籍管理系统,其数据库名为“EDUC”。 初始大小为 10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长; 日志文件初始为2MB,最大可增长到5MB,按1MB增长。 数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“E:\sql_data”(注意:此文件名必须已经建立的前提下才可以此操作)。 日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。 四.实验步骤 1.使用SQL Server Management Studio(简称SSMS)创建数据库。 (1)启动SSMS 在开始菜单中:所有程序-SQL Server 2005 -SQL Server Management Studio 单击“连接”按钮,便可以进入【SQL Server Management Studio】窗口。如果身份验证选择的是“混合模式”,则要输入sa的密码。 (2)建立数据库 在“对象资源管理器”窗口,建立上述数据库EDUC。在数据库节点上右击选择新建。同时建立一个同样属性的数据库EDUC1。

2. 使用向导删除上面建立的数据库。 用SSMS删除建立的数据库EDUC。 3、数据库的分离 将刚建好的数据库分离出来,即点击新建的EDUC——任务——分离,将删除连接和更新打一个钩,然后点击确定。如图所示: 4、数据分离出来之后可以附加进去 。 即右击数据库——附加——点击添加按钮,

找到数据库文件.mdf所存放的路径,然后点击确定,即可以将我们刚所创建的文件添加回去。 五.实验总结 通过本次实验,我熟悉了SQL Server 中SQL Server Management Studio的环境,了解了SQL Server 数据库的逻辑结构和物理结构,掌握使用向导创建和删除数据库的方法。加深了对数据库的认识和理解。 实验二使用SQL语句创建和删除数据库 SQL 语句的创建、删除和修改数据库。 三. 实验内容 使用SQL语句创建数据库userdb1。 四.实验步骤 1.创建数据库userdb1的SQL语句, create database userdb1 on (name=userdb1_data, filename='g:\xygl\userdb1.mdf' , size=5,

SQL数据库实验

《数据库设计》 实验报告 实验名称:数据定义语言DDL实验任课教师:张三 学号:123456 姓名:李四完成日期: 2018.10.21 一、实验目的 1、熟悉ORACLE的数据库管理和数据库操作环境。 2、通过SQL的DDL定义和修改基本表。 3、通过SQL的DDL建立与删除索引。 二、实验内容 1、进入ORACLE的环境,创建scott用户,至少分配CONNECT和RESOURCE角色,使用 户拥有一定的数据库操作权限。用户名:scott 口令:tiger 2、在SQL命令环境中用create table语句创建学生表(Student)、课程表(Course) 和学生选课表(SC)三个基本表。 表1-1 学生表Student 表1-2 课程表Course 表1-3 学生选课表SC

(1)定义Student基本表,其中Sno为主码。 create table Student( sno char(5) not null primary key, sname varchar(10) unique, ssex char(3) not null, sage number(3) default 0, sdept varchar(10) ); (2)定义COURSE基本表: create table Course( cno char(1) not null primary key, cname VARCHAR2(15) not null, cpno char(1) default 0, ccredit number(1) default 0 ); (3)定义SC基本表: create table SC( sno char(5) not null, cno char(1) not null, grade number(3) default 0, primary KEY (sno,cno) ); (4)显示基本表结构: DESC Student; DESC Course; DESC SC;

(最新版)SQL数据库实验报告

(最新版)SQL数据库实验报告 Xi邮电大学 学院名称学生姓名专业名称班级编号 数据库课堂实验 报告 :计算机学院 :199了解SQL Server 2000的基本数据类型、空值概念和结构特征2。学习使用T_SQL语句和企业管理器来创建和修改表结构3.学习使用SQL Server 2000提供的数据完整性函数,并在创建表时定义表的数据完整性通过实验进一步理解数据完整性的概念和分类 2,实验内容 使用T_SQL语句在市场数据库中创建客户基本信息表、商品信息表、商品和订单信息表。它们的定义如下: /*基本表的定义和创建*/create table customers(

customer ridentity(1,1) primarykey,cname varchar (8)不为空。地址变量(50),城市变量(10),电话变量(20) UNIQUE,公司变量(50),生日日期时间,类型tinyint DEFAULT 1); 创建表商品( 商品标识INT约束C1主键,商品名称varchar(20)不为空,价格货币, 描述varchar(200), 存储int, 提供者varchar(50),状态tinyint DEFAULT(0)); CREATE TABLE Orders( OrderId int IDENTITY(1,1) CONSTRAINT C2主键, 货物ID int not null引用删除级联上的货物(货物id),/*表级完整性约束,引用约束是货物(GoodID)。删除*/ customerid int非空外键(customerid) reference customers(customerid)时级联删除。/*表级完整性约束,引用约束为客户(客户),删除时不会删除引用表中的引用行*/ 数量int not null约束c3check(数量> 0)、ordermoney not null、ordedtadatetimedefault(getdate())。 实验3表数据插入、修改和删除 1,实验目的 掌握使用T_SQL语句和企业管理器插入、修改和删除数据操作

sqlserver数据库实验代码

重庆交通大学 学生实验报告 实验课程名称数据库应用与设计 开课实验室 xxxxxxxxx 学院 xxx 年级 2011 专业班 xxxx 学生姓名 xxxxxx 学号 xxxxxx 开课时间 2013 至 2014 学年第 2 学期

实验2 建立表和定义完整性约束 实验名称 建立模式、表和定义完整性约束 实验内容

实验目的 熟练掌握表的建立和数据完整性速描定义方法,实践DBMS提供的数据完整性功能,加深对数据完整性的理解。 实验方法 在实验一建立数据库的基础上用CREATE SCHEMA命令建立模式,用CREATE TABLE命令建立表并定义数据完整性约束,用ALTER TABLE命令修改表结构。 实验要求 1、用CREATE SCHEMA命令建立模式(自己命名模式名称)。 2、在定义的模式下参照图1和表1使用CREATE TABLE命令建立表并定义完整性约束。 3、使用ALTER TABLE命令按如下要求修改表结构: a)为订购单增加一个新的字段“完成日期”,类型为日期时间型,默认是空值。 b)为订单明细表的“数量”字段重新定义约束:大于0、小于等于1000的正整数,不允许为空值。 c) 将供应商表的供应商名字段的类型修改为varchar(30)。 实验步骤 create table仓库 (仓库号nchar(6)primary key check(仓库号like'[A-Z][A-Z][0-9][0-9][0-9][0-9]'), 城市nchar(10)not null unique, 面积float check(面积>=50)); create table职工 (职工号nchar(8)primary key check(职工号like'____[0-9][0-9]'), 仓库号as convert(nchar(6),substring(职工号,1,6))persisted not null foreign key references仓库(仓库号), 经理nchar(8)foreign key references职工(职工号), 工资money check(工资>=1000 and工资<=10000));

SQL数据库实验报告实验六

第 1部分 实验8 存储过程和触发器 1.实验目的 (1)掌握通过SQL Server 管理平台和Transact-SQL 语句CREA TE PROCEDURE 创建存储过程的方法和步骤。 (2)掌握使用Transact-SQL 语句EXECUTE 执行存储过程的方法。 (3)掌握通过SQL Server 管理平台和Transact-SQL 语句ALTER PROCEDURE 修改存储过程的方法。 (4)掌握通过SQL Server 管理平台和Transact-SQL 语句DROP PROCEDURE 删除存储过程的方法。 (5)掌握通过SQL Server 管理平台和Transact-SQL 语句CREA TE TRIGGER 创建触发器的方法和步骤。 (6)掌握引发触发器的方法。 (7)掌握使用SQL Server 管理平台或Transact-SQL 语句修改和删除触发器。 2.实验内容及步骤 (1)在查询设计器中输入以下代码,创建一个利用流控制语句的存储过程letters_print ,该存储过程能够显示26个小写字母。 CREATE PROCEDURE letters_print AS DECLARE @count int SET @count=0 WHILE @count<26 BEGIN PRINT CHAR(ASCII('a')+ @count) SET @count=@count +1 END 单击查询分析器的“执行查询”按钮,查看studentsdb 数据库的存储过程是否有letters_print 。 使用EXECUTE 命令执行letters_print 存储过程。

SQL数据库实验报告

学号:1207300122 姓名:罗金雄 专业班级:计网121班 指导老师:顾平 成绩: 广西大学2014 数据库原理实验报告 实验一 sql server的安装及环境介绍 实验目的 1. 掌握sql server 服务器的安装方法(安装版本为sql server 2012)。 2. 了解sql server 服务器的环境 实验要求 1. 完成sql server的安装、启动。 实验内容 安装sql server。 实验步骤 (1)下载sql server2012集成包并解压,运行后出现“sql server安装中心”。在左侧的目录树中选择“安装”。 (2)在右侧的选择项中,选择第1项目“全新安装或向现有安装添加功能”,然后就进入了安装程序。 (3)输入产口密钥,许可条款,安装程序支持文件。 (4)接下来,才是正式安装sql server程序。这个步骤看起来跟刚才在准备过程中的一样,都是扫描本机,防止在安装过程中出现异常。现在并不是在重复刚才的步骤,从下图明显看出这次扫描的精度更细,扫描的内容也更多。 (5)功能选择。勾选全部的安装组件,方便以后使用。 (6)实例配置。我们这里安装一个默认实例。 (7)服务账户配置。 (8)数据库引擎配置。 (9)之后的配置无需改动,一路下一步即可,等待安装成功。 请你练习 1. 如果在安装时设置身份验证模式为混合模式,那sql server默认生 成的系统管理员账户名是? 答:系统管理员账户名sa 2. sql server 2008中有哪几种身份验证模式? 答:windows身份、sqlserver和windows身份验证模式 3.什么是实例、默认实例和命名实例?在一台计算机上是否可以安装多个实例? 答:“实例”,就是一个 sql server 数据库引擎。一台计算机上最多只有一个默认实例,也可以没有默认实例,默认实例名与计算机名相同。“命名实例”就是自己使用这自己命名的事例。客户端连接命名实例时,必须使用以下计算机名称与命名实例的实例名组合的格式。sql server支持在同一台计算机上同时运行多个 sql server 数据库引擎实例。 分析与讨论: 1、程序运行出错,登录用户‘sa’无法连接数据库 解决方案:打开数据库企业管理器--展开sqlserver组--右键(local)数据库属性 ---安全性---身份验证选sqlserver和windows身份验证模式 ---确定 2

SQL数据库编程基础以及实例

实验须知 ⒈实验前,请认真阅读本次实验的全部内容,明确实验目的和实验任务,做好必要的实验准备。遇到较为复杂的程序应事先设计算法,可能的话,应写出程序代码。 ⒉实验前,应注意收集平时学习中遇到的疑点,留作实验中验证、解决。 ⒊提前五分钟以上进入实验室,不得迟到。 ⒋实验中积极思考、及时记录,有新的发现、新的收获或新的疑问的,及时记录,争取当堂完成实验报告。 ⒌珍惜实验时间,不开小差、不做与实验无关的事,更不得打游戏、或上网聊天;如需要上网查阅资料的,应事先征得实验老师的同意。 ⒍保持实验室安静和清洁卫生,不得大声喧哗;不得在实验室吃东西。 ⒎实验结束时,整理好台桌和凳子,关闭电脑及显示器,安排值日同学,打扫实验室卫生。 ⒏实验报告应字迹工整,标点符号准确无误;书写程序时应使用缩进格式,必要时还可以添加适当的注释,增强程序的可读性。 ⒐如实认真填写问题解决与实验收获两部分,如果问题还未解决,也应将问题记下,留作今后解决。

目录 实验须知.............................................................................................................................. I 目录...................................................................................................................................... I 实验一、SQLServer2005的认识.. (1) 实验二数据库创建 (8) 实验三数据表结构的建立与维护 (11) 实验四数据查询 (13) 实验五数据表的操作 (17) 实验六视图 (19) 实验七索引、约束、规则 (24) 实验八Transact-SQL语句的使用 (27) 实验九存储过程和触发器 (30)

相关主题
相关文档
最新文档