1 / 13

表的创建及简单操作实验

数据库原理 实验二. 表的创建及简单操作实验. 实验目的. 掌握利用 SQL 语言定义表和索引的方法。 掌握利用 SQL 完成表的更新。 掌握利用 SQL 完成较为简单的单表查询。. 实验内容及要求. 掌握构造 SQL 语句完成数据库中各张基本表的创建、和删除方法。 在建立基本表的基础上,掌握为表建立索引及删除索引的方法。 掌握利用 SQL 语句对基本表中元组进行插入、修改和删除的方法。 对数据库中各表中的记录完成简单查询,掌握单表查询的 SQL 语句构造、方法。. 实验 1.

gabi
Télécharger la présentation

表的创建及简单操作实验

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 数据库原理 实验二 表的创建及简单操作实验

  2. 实验目的 • 掌握利用SQL 语言定义表和索引的方法。 • 掌握利用SQL 完成表的更新。 • 掌握利用SQL 完成较为简单的单表查询。

  3. 实验内容及要求 • 掌握构造SQL语句完成数据库中各张基本表的创建、和删除方法。 • 在建立基本表的基础上,掌握为表建立索引及删除索引的方法。 • 掌握利用SQL语句对基本表中元组进行插入、修改和删除的方法。 • 对数据库中各表中的记录完成简单查询,掌握单表查询的SQL语句构造、方法。

  4. 实验1 • 现有一个学生选修课程的数据库School,其中存放以下三个表:学生Student(学号,姓名,性别,年龄,系别),即Sno char (3), Sname char(4), Ssex char (2), Sage int, Sdept char(6);课程Course(课程号,课程名,任课教师),即Cno char(3), Cname char(8), teacher char(4);选修SC(学号,课程号,分数),即Sno char (3), Cno char (3), Grade int。

  5. 建表,在定义中要求声明: • 每个表的主外码; • 学生的年龄介于16到40之间; • 学生的姓名和课程名不能为空值; • 选课成绩要么为空值,要么取0到100之间的整数。 • 往表中插入数据

  6. 学生 (101,张三,男,18,计算机;102,李四,男,16,数学;103,王玲,女,17,中文; 105,李飞,男,19,计算机;109,赵四,女,18,历史; 110,李平,男,20,化学) 举例:Insert Into Student Values('101', '张三', '男', 18, '计算机') • 课程 ( 203,操作系统,程羽; 279,高等数学,王备; 210,现代文学,王丹;243,有机化学,沈同; 204,数据结构,张青) 举例:Insert Into Course Values('203', '操作系统', '程羽') • 选修 (101,203,82; 105,203,59; 102,279,90; 101,279,88;105,279,82; 110,279,68; 109,210,72; 103,210,90;110,243,92; 101,204,85; 105,204,91; 102,204,56) 举例:Insert Into SC Values('101', '203', 82)

  7. 用SQL语句完成下列查询: • 查询学号为103的同学的姓名和所在系。 • 查询计算机系同学的学号和年龄。 • 查询各学生的学号和平均成绩。 • 查询每个系学生的最大年龄。 • 将学生选课情况按课程号升序、成绩降序排列。

  8. 记录更新: • 删除所有成绩不及格的选课记录。 • 将“279”号课程的考试成绩置成空值。

  9. 实验2 • 现有一个图书借阅管理的数据库BookBorrow,其中存放以下三个表:书 Book (书号,类别,书名,出版社,作者,价格,总藏书量,库存,出版年份),即bno char(8), categorychar(10),titlevarchar(40), presschar(30),authorchar(20), pricedecimal(7,2), totalinteger, stockinteger, pressdatedatetime;借书证 Card(卡号,姓名,单位,类别),即cnochar(7),cnamechar(10),departmentvarchar(40),typechar(1);借书记录borrow(卡号,书号,借期,还期),即cno char(7), bno char(8), borrowdate datetime, returndate datetime,

  10. 建表,在定义中要求声明: • 每个表的主外码; • 图书的库存量不能多于总藏书量; • 图书还期不能早于借期。 • 向表中插入记录

  11. ('10000001', 'TP80010001', '数据库系统原理教程', '清华大学出版社', '王珊', 35.2, 20, 19, '2000-01-01';'10000002', 'TP80010001', '数据库系统概论', '高等教育出版社', '萨师煊', 25.1, 12, 11, '2004-03-01';'10000011', 'TP82010001', '计算机原理', '高等教育出版社', '张一平', 27.1, 39, 37, '2004-08-01';'10000013', 'TP82010001', ' C语言程序设计', '高等教育出版社', '李华', 21.1, 54, 52, '2001-05-01';'10000005', 'TP80010001', '数据库原理', '高等教育出版社', '王家树', 18.5, 43, 43, '2001-05-01';'10000015', 'TP82010001', '计算机网络', '高等教育出版社', '高明', 15.9, 23, 23, '1998-08-01') • 借书证 ('C100001', '王娜', '计算机', 'A'; 'C100002', '刘晨', '计算机', 'A';'C200001', '李锋', '数学', 'A'; 'C300001', '李平', '金融', 'B';'C300002', '陈旭', '金融', 'B'; 'C300004', '董升', '经济', 'B') • 借书记录 ('C100001', '10000001', '2005-01-01 ', '2005-03-01';'C100001', '10000002', '2005-02-19 ', '2005-03-01';'C100001', '10000013', '2005-02-19 ', '2005-04-19';'C200001', '10000013', '2006-02-19 ', '2006-04-19';'C200001', '10000011', '2006-02-19 ', '2006-03-19';'C300001', '10000011', '2004-12-19 ', '2005-01-19')

  12. 用SQL语句完成下列查询: • 查询书号为10000013的图书的借书记录。 • 查询卡号为C100001的读者的姓名。 • 查询刘晨的卡号和单位。 • 查询借书证各类别的读者人数。 • 查询总藏书量在30本以上的图书的书名、作者、出版社、出版年份信息。 • 查询总藏书超过(多于)100本的出版社信息。 • 统计每家出版社出版图书的平均价格。

  13. 讨论题 • 总结针对表的操作有哪几种,各完成哪些功能? • 总结针对记录的操作有哪几种,各完成哪些功能? • 在SQL Server 2000中,在进行表及其中元组的操作时,系统如何保证其参照完整性? • SQL Server 2000软件系统是否区分字母大小写?

More Related