当前位置:文档之家› sql数据库数据更新实验

sql数据库数据更新实验

sql数据库数据更新实验
sql数据库数据更新实验

数据更新实验

建立一个商店的数据库store,记录顾客及其购物情况,由下面三个表组成:商品(商品号,商品名,单价,商品类别,供应商);

顾客(顾客号,姓名,住址);

购买(顾客号,商品号,购买数量);

试用SQL语言完成下列功能:

建表,在定义中要求声明:

(1)每个表的主外码;

(2)顾客的姓名和商品名不能为空值;

(3)单价必须大于0;

(4)购买数量必须在0到20之间;

建立一个商店的数据库store,记录顾客及其购物情况,由下面三个表组成:

商品(商品号,商品名,单价,商品类别,供应商);

顾客(顾客号,姓名,住址);

购买(顾客号,商品号,购买数量);

create database store

CREATE TABLE 商品(

商品号char (10) primary key ,

商品名char (20) not null ,

单价char (10) check ('单价'>0),

商品类别char (10) NULL ,

供应商char (10) NULL

)

CREATE TABLE 顾客(

顾客号char (10) primary key ,

姓名char (10) not null ,

住址char (20) NULL

)

CREATE TABLE 购买(

顾客号char (10) not null ,

商品号char (10) not null,

购买数量char (10) check ('购买数量'>0 and '购买数量'<20), primary key (顾客号,商品号),

foreign key (顾客号) references 顾客(顾客号),

foreign key (商品号) references 商品(商品号) )

实验目的和要求:

掌握用SQL语句实现数据的插入、修改和删除。

实验内容:

在实验五建立的商店数据库store中用SQL语句实现下列操作:1.往表中插入数据:

商品(M01,佳洁士,8.00,牙膏,宝洁;

M02,高露洁,6.50,牙膏,高露洁;

M03,洁诺,5.00,牙膏,联合利华;

M04,舒肤佳,3.00,香皂,宝洁;

M05,夏士莲,5.00,香皂,联合利华;

M06,雕牌,2.50,洗衣粉,纳爱斯

M07,中华,3.50,牙膏,联合利华;

M08,汰渍,3.00,洗衣粉,宝洁;

M09,碧浪,4.00,洗衣粉,宝洁;)

顾客(C01,Dennis,海淀;

C02,John,朝阳;

C03,Tom,东城;

C04,Jenny,东城;

C05,Rick,西城;)

购买 (C01,M01,3; C01,M05,2;

C01,M08,2; C02,M02,5;

C02,M06,4; C03,M01,1;

C03,M05,1; C03,M06,3;

C03,M08,1; C04,M03,7;

C04,M04,3; C05,M06,2;

C05,M07,8;)

注:商品表数据(9),顾客表数据(5), 购买表数据(5)

2.完成下列查询:

(1)求购买了供应商"宝洁"产品的所有顾客;

(2)求购买的商品包括了顾客"Dennis"所购买商品的顾客(姓名);

(3)求牙膏卖出数量最多的供应商。

3.将所有的牙膏商品单价增加10%。

4.删除从未被购买的商品记录。

实验报告:

1. 实验各项内容实现的过程。

2. 实验结果分析。

学时:2学时

1.往表中插入数据:

INSERT INTO 商品 VALUES ('M01','佳洁士',8.00,'牙膏','宝洁')

INSERT INTO 商品 VALUES ('M02','高露洁',6.50,'牙膏','高露洁') INSERT INTO 商品 VALUES ('M03','洁诺', 5.00,'牙膏','联合利华') INSERT INTO 商品 VALUES ('M04','舒肤佳',3.00,'香皂','宝洁')

INSERT INTO 商品 VALUES ('M05','夏士莲',5.00,'香皂','联合利华') INSERT INTO 商品 VALUES ('M06','雕牌',2.50,'洗衣粉','纳爱斯') INSERT INTO 商品 VALUES ('M07','中华',3.50,'牙膏','联合利华') INSERT INTO 商品 VALUES ('M08','汰渍',3.00,'洗衣粉','宝洁')

INSERT INTO 商品 VALUES ('M09','碧浪',4.00,'洗衣粉','宝洁')

INSERT INTO 顾客V ALUES ('C01','Dennis','海淀') INSERT INTO 顾客V ALUES ('C02','John','朝阳') INSERT INTO 顾客V ALUES ('C03','Tom','东城') INSERT INTO 顾客V ALUES ('C04','Jenny','东城') INSERT INTO 顾客V ALUES ('C05','Rick','西城')

INSERT INTO 购买V ALUES ('C01','M01',3) INSERT INTO 购买V ALUES ('C01','M05',2) INSERT INTO 购买V ALUES ('C01','M08',2)

INSERT INTO 购买V ALUES ('C02','M02',5)

INSERT INTO 购买V ALUES ('C02','M06',4)

INSERT INTO 购买V ALUES ('C03','M01',1)

INSERT INTO 购买V ALUES ('C03','M05',1)

INSERT INTO 购买V ALUES ('C03','M06',3)

INSERT INTO 购买V ALUES ('C03','M08',1)

INSERT INTO 购买V ALUES ('C04','M03',7)

INSERT INTO 购买V ALUES ('C04','M04',3)

INSERT INTO 购买V ALUES ('C05','M06',2)

INSERT INTO 购买V ALUES ('C05','M07',8)

2.完成下列查询:

(1)求购买了供应商"宝洁"产品的所有顾客;SELECT 顾客号,姓名 FROM 顾客

WHERE 顾客号 IN

(SELECT 顾客号 FROM 购买

WHERE 商品号 IN

(SELECT 商品号 FROM 商品

WHERE 供应商='宝洁'))

(2)求购买的商品包括了顾客"Dennis"所购买商品的顾客(姓名);SELECT 姓名 FROM 顾客

WHERE 顾客号 IN

(SELECT 顾客号 FROM 购买

WHERE 商品号 IN

(SELECT 商品号 FROM 购买

WHERE 顾客号 IN

(SELECT 顾客号 FROM 顾客

WHERE 姓名='Dennis')))

(3)求牙膏卖出数量最多的供应商。

SELECT 供应商 FROM 商品

WHERE 商品号 IN

(SELECT 商品号 FROM 购买

WHERE 购买数量 IN

(SELECT MAX(购买数量) FROM 购买

WHERE 商品号 IN

( SELECT 商品号 FROM 商品

WHERE 商品类别='牙膏')))

3.将所有的牙膏商品单价增加10%。

UPDATE 商品 SET 单价=单价+0.1*单价 WHERE 商品类别='牙膏'

4.删除从未被购买的商品记录。DELETE FROM 商品

WHERE 商品号 IN

( SELECT 商品号 FROM 商品

WHERE NOT EXISTS

(SELECT 商品号 FROM 购买

WHERE 商品号=商品.商品号))

数据库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数据库实验报告 (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数据查询

数据库实验四: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)设计两个内外层互相关的嵌套查询。

数据库SQLServer实验3答案教辅教材

实验3 SQL Server数据表管理 一、实验目的 1.学会使用SQL Server管理平台和Transact-SQL语句CREATE TABLE 和ALTER TABLE创建和修改表。 2.学会在SQL Server管理平台中对表进行插入、修改和删除数据操作。 3.学会使用Transact-SQL语句对表进行插入、修改和删除数据操作。 4.了解SQL Server的常用数据类型。 二、实验内容 1.启动SQL Server管理平台,在对象资源管理器中展开“studentsdb数据库文件夹。 2.在studentsdb数据库中创建数据表《学生表》、《课程表》、《成绩表》,数据结 构如图3-1、图3-2和图3-3所示。 图3-1 学生表 图3-2 课程表

图3-3 成绩表3.在SQL Server管理平台中创建《学生表》、《课程表》。 4.在SQL Server管理平台中,将《学生表》的学号列设置为主键,非空。 5.使用Transact-SQ语句CREATE TABLE在studentsdb数据库中创建《成绩表》。 6.《学生表》、《课程表》、《成绩表》中的数据如图3-4、图3-5和图3-6所示。 7.在SQL Server管理平台中为《学生表》、《课程表》、《成绩表》添加数据。

(注意:在添加数据是必须逐行输入,否则系统将会报错,显示“出错信息为:键列信息不足或不正确。更新影响到多行”,产生原因是由于相同记录所造成)。 8.使用Transact-SQL语句INSERT NTTO …VALUES向studentsdb数据库的《成绩表》插入以下数据: 学号课程编号成绩 0004 0001 80

数据库-SQL语言的实验

北华航天工业学院《数据库原理与应用》 实验报告 报告题目:SQL语言 作者所在系部:计算机系 作者所在专业:网络工程 作者学号:20114052233 作者姓名: 张旭刚 指导教师姓名:李建义 完成时间:20134.24 北华航天工业学院教务处制

SQL语言 一、实验目的 1、理解数据库以及数据表的设计; 2、熟悉SQLServer2005中的数据类型; 3、熟悉使用SQL语句创建和删除模式和索引; 4、掌握使用SQL语句创建、修改和删除数据表; 5、掌握使用SQL语句查询表中的数据; 6、掌握使用SQL语句插入、修改和删除数据表中的数据; 7、掌握使用SQL语句创建、删除、查询和更新视图。 二、实验内容 (一)创建数据库和模式 1、通过SQL语句创建图书信息管理数据库,命名为“db_Library”,数据文件和日志文件放在D盘下以自己学号和姓名命名的文件夹中,数据文件的逻辑名为db_Library_data,数据文件的操作系统名为db_Library_data.mdf,文件初始大小为10MB,最大可增加至300MB,增幅为10%;日志文件的逻辑名为db_Library_log,日志文件的操作系统名为db_Library_data.ldf,文件初始大小为5MB,最大可增加至200MB,增幅为2MB。 2、通过SQL语句在该数据库中创建模式L-C。 (二)创建和管理数据表 要求为各数据表的字段选择合适的数据类型及名称;为各数据表设置相应的完整性约束条件。 1、通过SQL语句将以下数据表创建在L-C模式下: 课程信息表(tb_course)——课程编号、课程名、先修课、学分 2、通过SQL语句将以下数据表创建在该数据库的默认模式dbo下: 图书类别信息表(tb_booktype)——类别编号、类别名称 图书信息表(tb_book)——图书编号、类别编号、书名、作者、出版社、定价、库存数 读者信息表(tb_reader)——读者编号、姓名、性别、学号、班级、系部 借阅信息表(tb_borrow)——图书编号、读者编号、借阅日期、归还日期 3、通过SQL语句对读者信息表进行修改:删除系部字段、添加所在系字段。 4、通过SQL语句对图书信息表进行修改:将定价的数据类型改为REAL。 5、通过SQL语句删除课程信息表。 (三)创建和删除索引 1、使用SQL语句在图书信息表上创建一个非聚簇索引IX_S_QUANTITY,要求按照该表中库存数字段的降序创建。 2、使用SQL语句在读者信息表上创建一个唯一的非聚簇索引IX_S_NAME,要求按照该表中的姓名字段的升序创建。 3、使用SQL语句删除之前创建的两个索引。 (四)数据库及数据表设计 根据周围的实际应用情况,自选一个小型的数据库应用项目进行研究,完成该系统的设计。要求2人一组,通过需求分析,列出系统的主要功能,并完成该系统数据库的逻辑结构设计。例如可选择学籍管理系统、企业进销存管理系统、人事管理系统或在线考试系统等。

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语句创建和删除数据库、表 一. 实验目的: 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语句实验报告

《数据库原理及应用》实验报告 SQL语句部分 总成绩:

实验一熟悉SQL SERVER,数据定义实验 实验一成绩: 一、实验目的 1、利用查询分析器创建数据库 2、利用查询分析器用SQL语言定义基本表、索引并进行相关操作 二、实验步骤及内容 在以下实验中,使用学生-课程数据库,它描述了学生的基本信息、课程的基本信息及学生选修课程的信息。 1.创建学生课程数据库 3.创建课程关系表C : 5.将以上创建表S、C、SC的SQL命令以 .SQL文件的形式保存在磁盘上。 6、在表S上增加“出生日期”属性列。 7、删除表S的“年龄”属性列。 8、删除S姓名列的唯一值约束。 9、修改SC表成绩属性列为精确数字型。 10、在表S上,按“Sno”属性列的唯一值方式建立索引。 11、删除表SC,利用磁盘上保存的.SQL文件重新创建表SC。 12、创建教材P74页习题5中SPJ数据库中的四个关系:S、P、J、SPJ。 三、实验结果: 1.创建学生课程数据库 create database Studend; create table S ( Sno CHAR(9)PRIMARY KEY, Sname CHAR(20)UNIQUE, Ssex CHAR(2), Sage smallint, Sdept char(20), );

3.创建课程关系表C : 课程号课程名先行课学分 Cno Cname Cpno ccredit create table C ( Cno char(4)primary key, Cname CHAR(40), Cpno char(4), Ccredit SMALLINT, ); 4.创建课程关系表SC : 学号课程号成绩 Sno Cno grade create table SC ( Sno char(9), Cno char(4), Grade smallint, ); 5.将以上创建表S、C、SC的SQL命令以 .SQL文件的形式保存在磁盘上。 6、在表S上增加“出生日期”属性列。 alter table S add Sbirthday datetime; 7、删除表S的“年龄”属性列。 alter table S drop column Sage;

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”的订单表。 类别表 产品信息表

数据库sqlserver实验报告

实验一熟悉常用的 DBMS:SQL SERVER2008、Oracle 试验内容及要求: (1)了解不同数据库管理系统及不同版本的相应功能特点 目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。国际国内的主导关系型数据库管理系统有Oracle、Sybase、INFORMIX和INGRES。这些产品都支持多平台,如UNIX、VMS、Windows,但支持的程度不一样。IBM的DB2也是成熟的关系型数据库。但是,DB2是内嵌于IBM的AS/400系列机中,只支持OS/400操作系统。 1.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL AB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL AB的注册商标。 MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。与其他数据库管理系统相比,MySQL具有以下优势: (1)MySQL是一个关系数据库管理系统。 (2)MySQL是开源的。 (3)MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。 (4)MySQL服务器工作在客户/服务器或嵌入系统中。 (5)有大量的MySQL软件可以使用。 2.SQL Server SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。 目前最新版本是SQL Server2005,它只能在Windows上运行,操作系统的系统稳定性对数据库十分重要。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。 SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,

北邮数据库实验二用SQL Server实现数据库设计

实验二用SQL Server实现数据库设计 实验目的: 1.掌握使用企业管理器创建和管理SQL Server数据库及相关数据库对象。 2.掌握使用SQL语言中的SELECT命令实现查询功能。 上机准备: 1.复习有关关系数据库的基本知识和概念; 2.复习有关SQL语言中SELECT命令的使用; 3.了解有关SQL Server系统的组成; 4.复习有关SQL Server服务器的使用和管理; 5.复习有关企业管理器的基本操作; 6.复习有关查询分析器的基本操作; 7.了解有关SQL Server服务器的登陆账号,密码; 实验内容: 本实验将建立一个学校教学管理数据库,在这个数据库中,存储以下信息: 1.有关学生的信息,包括学生的学号,姓名,班级,性别,出生时间,政治面貌,籍贯,入学时间,联系电话,简历; Student(Sno,Sname, Ssex,Classno,Sbirth,Status,Hometown,Enrollment,Telephone,Resume) 2.有关班级的信息,包括班级的班名,专业,年级,人数,班主任; SClass(ClassNo,ClassName,Major,Grade,Number,Advisor)

3.有关课程的信息,包括课程编号,课程名称,课程类别(是指该课程为必修,指选还是任选),适用专业,适用年级,开课时间(是指在每个学年的第一学期,还是第二学期),学分,周学时; Course(CourseNo,CourseName,Category,Major,Grade,StartTM,Credits, WeekHours) 4.有关学年课程安排的信息,包括课程编号,开设课程的学年(例如:2002学年),开设课程的班级,任课教师; Schedule(CourseNo,StartYear,ClassNo,Teacher)

(完整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

数据库SQL语句实验报告

《数据库原理及应用》实验报告SQL语句部分 :绩成总

实验一熟悉SQL SERVER,数据定义实验 实验一成绩: 一、实验目的 1、利用查询分析器创建数据库 2、利用查询分析器用SQL语言定义基本表、索引并进行相关操作 二、实验步骤及内容 在以下实验中,使用学生-课程数据库,它描述了学生的基本信息、课程的基本信息及学生选修课程的信息。 1.创建学生课程数据库 2.创建学生关系表S : 3.创建课程关系表C : 课程名学分先行课课程号Cno ccreditCname Cpno 4.创建课程关系表SC : 5.将以上创建表S、C、SC的SQL命令以 .SQL文件的形式保存在磁盘上。 6、在表S上增加“出生日期”属性列。 7、删除表S的“年龄”属性列。 8、删除S姓名列的唯一值约束。 9、修改SC表成绩属性列为精确数字型。 10、在表S上,按“Sno”属性列的唯一值方式建立索引。 11、删除表SC,利用磁盘上保存的.SQL文件重新创建表SC。 12、创建教材P74页习题5中SPJ数据库中的四个关系:S、P、J、SPJ。 三、实验结果: 1.创建学生课程数据库 ; Studend create database2.创建学生关系表S : S create table(, 9Sno CHAR()PRIMARYKEY UNIQUE,)(Sname CHAR20CHAR Ssex (2), smallint Sage ,

char Sdept 20(), ); .创建课程关系表C 3: 课程号课程名先行课学分 ccredit Cpno CnoCname table C create (primary key,) Cno char(4Cname CHAR(40 ),char(), 4Cpno ,Ccredit SMALLINT); 4.创建课程关系表SC : 学号课程号成绩 grade Sno Cno createtable SC(9),Sno char(),char Cno (4, Grade smallint); 5.将以上创建表S、C、SC的SQL命令以 .SQL文件的形式保存在磁盘上。 6、在表S上增加“出生日期”属性列。 ;datetimeadd Sbirthday alter table S 7、删除表S的“年龄”属性列。

数据库实验六 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

数据库 实验报告5 ESQL

实验内容: 编写嵌入式C 程序,编程实现了对“学生课程数据库”的访问和操作:对Student 表中的年龄进行更新。系统每输出一个学生记录,询问用户是否更新。如果要更新,就输入新的年龄。 一. 实验环境介绍。 实验五是在之前完成的实验一的基础上进行的。 系统配置为:CPU: P3 800 内存:512MB 硬盘:30G 软件系统:WINDOWS 2000 ADV ANCED SERVER 。 在实验一中,我们已经成功安装了KingbaseES V4.1,形成本实验所需要的环境。其中安装路径为C:\Program Files 目录下。 二.编写含嵌入式C 程序test ,扩展名为.pc 。 EXEC SQL BEGIN DECLARE SECTION; /*说明主变量deptname ,HSno ,HSname , char deptname[20]; *HSsex ,HSage ,NEWAGE 。*/ char HSno[9]; char HSname[20]; char HSsex[2]; int HSage; int NEWAGE; EXEC SQL END DECLARE SECTION; /*声明部分结束*/ long SQLCODE; EXEC SQL INCLUDE sqlca; /*定义SQL 通信区*/ int main(void) { int count = 0; char yn; /*变量yn 代表yes 或者no*/ printf("Please choose the department name(CS/MA/IS): "); /*为主变量deptname 赋值*/ scanf("%s", &deptname); EXEC SQL CONNECT TO 学生课程数据库@localhost:54321 USER "SYSTEM"/"MANAGER"; /*连接数据库TEST*/ EXEC SQL DECLARE SX CURSOR FOR /*说明游标,为查询和更新做准备*/ SELECT Sno, Sname, Ssex, Sage FROM Student WHERE SDept = :deptname; EXEC SQL OPEN SX; /*打开游标。*/ for ( ; ; ) /*用循环结构逐条处理结果集的记录*/ { 《数据库系统概论》实验报告 题目:实验五 通过嵌入式SQL 访问数据库 姓名 Vivian 日期 2006-1-1

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实验题目

实验一数据库和表的建立 实验目的 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数据库实验报告

数据库设计与管理 实验报告 班级: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表中输入记录,并练习记录的修改及删除

相关主题
文本预览
相关文档 最新文档