data数据库实验3.doc
文本预览下载声明
任课教师:刘建平
《数据库原理及应用》
(2011-2012学年第1学期)
实
验
报
告
学号:姓名:唐佳莹
班级:09电信实验班
实验三 数据库的更新实验
实验目的
本实验的目的是要求学生熟练掌握使用SQL 和通过SQL Server企业管理器向数据库输入数据、修改数据和删除数据的操作。
相关知识
SQL Server提供了很多方法更新表中数据。以插入记录为例,可以使用INSERT语句、VALUES子句将特定值集合插入一行;可以使用数据库接口API(ADO、OLE DB、ODBC和DB-Library)中的函数进行数据插入等。本实验主要掌握INSERT、UPDATE和DELETE语句的基本用法。
插入操作,其语句的一般格式为
INSERT
INTO table_or_view [(colum_list)]
VALUES (date_values);
此语句是使date_values作为一行数据记录插入已命名的表或视图table_or_view中。
Column_list是由逗号分隔的table_or_view的列名列表,用来指定为其提供数据的列。如果没有指定column_list,表或视图中的所有列都将接收数据。
如果column_list没有为表或视图中的所有列命名,将在列表中没有命名的任何列中插入一个NULL值(或者在默认情况下为这些列定义的默认值)。在列的列表中没有指定的所有列都必须允许NULL值或者指定的默认值。否则SQL Server将返回一个错误。
修改操作语句的一般格式为
UPDATE 表名
SET 列名=表达式[,列名=表达式]……
[where 条件];
其功能是修改指定表中满足WHERE子句条件的元组。其中SET子句用于指定修改方法,即用表达式的值取代相应的属性列值。如果省略WHERE子句,则表示要修改表中的所有元组。
删除语句的一般格式为
DELETE
FROM 表名
[WHERE 条件];
其功能是从指定表中删除满足WHERE子句条件的所有元组。如果省略WHERE子句,则表示要删除表中的所有元组,但表的定义仍在字典中。
实验内容
通过企业管理器,在学生管理数据库的学生、课程和选课3个表中各输入10条记录。要求记录不仅满足数据约束要求,还要有表间关联的记录。
具体完成以下例题。将它们转换为SQL语句表示,在学生管理库中实现其数据更新操作。
例1 将一新学生记录(学号:95050;姓名:陈冬;性别:男;年龄:18;所在系:计算机科学系)插入学生表中。
INSERT
INTO Student(Sno,Sname,Ssex,Sdept,Sage)
VALUES (95050,陈冬,男,CS,18)
Sno Sname Ssex Sage Sdept
---------- ---------- ---- ----------- ----------
95001 李勇 男 20 CS
95002 刘晨 女 19 IS
95003 王名 女 18 MA
95004 张立 男 19 IS
95005 李明 男 22 CS
95006 张小梅 女 23 IS
95007 封晓雯 女 20 MA
95050 陈冬 男 18 CS
例2 插入一条选课记录(‘95020’,’C1’)。
1)INSERT
INTO Student(Sno)
VALUES (95020) 先在Student表中插入学号95020
2)INSERT
INTO Course (Cno)
VALUES (C1) 再在Course 表中插入课程C1
SELECT * FROM SC
3)INSERT
INTO SC(Sno,Cno)
VALUES (95020,C1) 最后才能在SC中添加该记录
Sno Cno Grade
---------- ---------- -----------
95001 1 92
95001 2 85
95001
显示全部