数据库查找
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北华航天工业学院《数据库原理与应用》
实验报告
报告题目:
作者所在系部:
作者所在专业:
作者学号:
作者姓名:
指导教师姓名:
完成时间:
北华航天工业学院教务处制
交互式SQL
一、实验目的
1、理解数据库以及数据表的设计;
2、熟悉SQL Server2005中的数据类型;
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)——课程编号、课程名、先修课、学分
CREATE SCHEMA"L_C" AUTHORIZATION dbo;
CREATE TABLE L_C.tb_course/* 课程信息表(tb_course)
课程编号、课程名、先修课、学分*/
(
课程编号CHAR(9) PRIMARY KEY,
课程名CHAR(20) UNIQUE,
先修课CHAR(10),
学分CHAR(100)
);
2、通过SQL语句将以下数据表创建在该数据库的默认模式dbo下:
图书类别信息表(tb_booktype)——类别编号、类别名称
图书信息表(tb_book)——图书编号、类别编号、书名、作者、出版社、定价、库存数
读者信息表(tb_reader)——读者编号、姓名、性别、学号、班级、系部
借阅信息表(tb_borrow)——图书编号、读者编号、借阅日期、归还日期
CREATE TABLE tb_booktype /* 图书类别信息表(tb_booktype)
类别编号、类别名称*/
(
类别编号CHAR(9) PRIMARY KEY,
类别名称CHAR(10)
);
CREATE TABLE tb_book /*图书信息表(tb_book)—
—图书编号、类别编号、书名、作者、出版社、定价、库存数*/
(
图书编号CHAR(100)PRIMARY KEY,
类别编号CHAR(10),
书名CHAR(20),
作者CHAR(20),
出版社CHAR(20),
定价float,
库存数int
);
CREATE TABLE tb_reader /*读者信息表(tb_reader)——
读者编号、姓名、性别、学号、班级、系部(tie)*/
(
读者编号CHAR(100) PRIMARY KEY,
读者姓名CHAR(10),
读者性别CHAR(10),
读者学号CHAR(100),
读者班级CHAR(20),
读者系部CHAR(20)
);
CREATE TABLE tb_borrow /*借阅信息表(tb_borrow)——
图书编号、读者编号、借阅日期、归还日期*/
(
图书编号CHAR(100),
读者编号CHAR(100),
借阅日期CHAR(100),
归还日期CHAR(100)
PRIMARY KEY(图书编号,读者编号),
);
3、通过SQL语句对读者信息表进行修改:删除系部字段、添加所在系字段。
ALTER TABLE tb_reader DROP column 读者系部;
ALTER TABLE tb_reader ADD 读者系部char;
4、通过SQL语句对图书信息表进行修改:将定价的数据类型改为REAL。
ALTER TABLE tb_book ALTER COLUMN 定价real;通过SQL语句删除课程信息表。
5、通过SQL语句删除课程信息表。
DROP TABLE L_C.tb_course;
(三)创建和删除索引
1、使用SQL语句在图书信息表上创建一个非聚簇索引IX_S_QUANTITY,要求按照该表中库存数字段的降序创建。
CREATE INDEX IX_S_QUANTITY ON tb_book(库存数DESC);
2、使用SQL语句在读者信息表上创建一个唯一的非聚簇索引IX_S_NAME,要求按照该表中的姓名字段的升序创建。
CREATE UNIQUE INDEX IX_S_NAME ON tb_reader(读者姓名ASC);