数据库原理及应用实验指导

2019-06-05 10:51

实验3 表与视图的基本操作

实验3 表与视图的基本操作

实验示例

1.表的创建与使用 1、创建表

SQL Server 2000提供了两种方法创建数据库表,第一种方法是利用企业管理器创建表;另一种方法是利用transact-sql语句中的create table命令创建表。

(1)利用企业管理器创建表

-图3-1 创建表结构对话框

1

数据库原理与应用实验指导

在企业管理器中,展开指定的服务器和数据库,打开想要创建新表的数据库,用右键单击表对象,从弹出的快捷菜单中选择“新建表”选项,或者在工具栏中选择新建图标,就会出现新建表对话框如图3-1,在该对话框中,可以定义列名称、列类型、长度、精度、小数位数、是否允许为空、缺省值、标识列、标识列的初始值、标识列的增量值和是否有行的标识。

(2)利用create table命令创建表。其语法为:

CREATE TABLE [ database_name.[ owner ] .| owner.] table_name

( { < column_definition > | column_name AS computed_column_expression | < table_constraint > ::= [ CONSTRAINT constraint_name ] } | [ { PRIMARY KEY | UNIQUE } [ ,...n ] ] [ ON { filegroup | DEFAULT } ] [ TEXTIMAGE_ON { filegroup | DEFAULT } ]

< column_definition > ::= { column_name data_type } [ COLLATE < collation_name > ] [ [ DEFAULT constant_expression ] | [ IDENTITY [ ( seed , increment ) [ NOT FOR REPLICATION ] ] ] ] [ ROWGUIDCOL] [ < column_constraint > ] [ ...n ]

< column_constraint > ::= [ CONSTRAINT constraint_name ] { [ NULL | NOT NULL ] | [ { PRIMARY KEY | UNIQUE } [ CLUSTERED | NONCLUSTERED ] [ WITH FILLFACTOR = fillfactor ] [ON {filegroup | DEFAULT} ] ]}

| [ [ FOREIGN KEY ] REFERENCES ref_table [ ( ref_column ) ] [ ON DELETE { CASCADE | NO ACTION } ] [ ON UPDATE { CASCADE | NO ACTION } ] [ NOT FOR REPLICATION ] ]

| CHECK [ NOT FOR REPLICATION ]( logical_expression ) } < table_constraint > ::= [ CONSTRAINT constraint_name ] {

[ { PRIMARY KEY | UNIQUE } [ CLUSTERED | NONCLUSTERED ] { ( column [ ASC | DESC ] [ ,...n ] ) } [ WITH FILLFACTOR = fillfactor ] [ ON { filegroup | DEFAULT } ]]

| FOREIGN KEY[ ( column [ ,...n ] ) ] REFERENCES ref_table [ ( ref_column [ ,...n ] ) ] [ ON DELETE { CASCADE | NO ACTION } ] [ ON UPDATE { CASCADE | NO ACTION } ] [ NOT FOR REPLICATION ]

| CHECK [ NOT FOR REPLICATION ]( search_conditions )} [例1] 创建一个雇员信息表的create table命令如下:

create table employee(empid int not null primary key clustered, name varchar(20) NOT NULL,sex char(2) NULL,

birthday datetime null,hire_date datetime NOT NULL DEFAULT (getdate()), professional_title varchar(10) null,

salary money null check(salary is null or salary>=450), memo ntext null )。

[例2] 创建一个学生信息表的create table命令如下:(注意该命令执行时,需要class班级表与speciality专业表已存在,或者先暂时把两外码参照子句去掉后执行。)

CREATE TABLE student(sno char(8) NOT NULL PRIMARY KEY,sname char(20) NOT NULL, sclass char(10) NULL DEFAULT('本科'),

2

实验3 表与视图的基本操作

ssex char(2) NULL DEFAULT ('男') CHECK (ssex = '男' or ssex = '女'), sdh varchar(14) NULL ,scsrq datetime NULL , srxrq datetime NULL ,saddr varchar(50) NULL ,

smemo varchar(200) NULL ,spno char(4) NULL ,csno char(4) NULL ,

CONSTRAINT FK_student_class FOREIGN KEY(csno) REFERENCES class(csno), CONSTRAINT FK_student_speciality FOREIGN KEY(spno) REFERENCES speciality(spno))

2、增加、删除和修改字段

(1)利用企业管理器操作表字段

利用企业管理器增加、删除和修改字段 。在企业管理器中,打开指定的服务器中要修改表的数据库,用右键单击要进行修改的表,从弹出的快捷菜单中选择“设计表”选项,则会出现设计表对话框如图3-2,在该对话框中,可以利用图形化工具完成增加、删除和修改字段的操作。

图3-2 表设计器修改表字段

(2)利用alter table命令修改表。

利用transact-sql语言中的alter table命令也可增加、删除和修改表中字段,其语法略,请读者自己查阅。

[例3] 给student表添加sage年龄字段,命令为:

alter table student add sage int --添加sage字段。 [例4] 删除student 表中的sage年龄字段,命令为:

alter table student drop column sage --即可删除sage字段。

3

数据库原理与应用实验指导

3、创建、删除和修改约束

在SQL Server 2000中有5种约束:主键约束、惟一性约束、检查约束、缺省约束、外部键约束,它们的定义也是create table命令的一部分,创建、删除和修改这些约束还可参阅相关完整性约束的内容。

在SQL Server 2000中,在出现设计表窗口时,按工具栏上的属性按钮,即能出现图3-3所示的属性窗体,从中能通过“表”、“关系”、“索引/键”、“check 约束”等选项卡来创建、删除和修改完整性约束。

图3-3 表设计器修改表字段

4、查看表格信息

图3-4 添加、编辑表记录

(1)查看表格的定义:在企业管理器中,打开指定的服务器中的数据库,用右键单击要查看的表,从弹出的快捷菜单中选择“设计表”选项,则会出现设计表对话框,在该对话框中,可以查看表及各字段的信息。

4

实验3 表与视图的基本操作

(2)查看表格中的数据:在企业管理器中,在指定的服务器中某数据库中某表上,右键单击该表,从弹出的快捷菜单中选择“打开表”→“返回所有行”,即可网格方式查看表格中的数据,并能在表的最后交互式添加记录,如图3-4。

(3)查看表格与其他数据库对象的依赖关系:打开数据库中“关系图”,即可直观地查看表格与其他数据库对象的依赖关系。

(4)利用系统存储过程sp_help查看表的信息,如图3-5

图3-5 查看表格信息

5、对表查询

在企业管理器中,右键单击某表,从弹出的快捷菜单中选择“打开表”→“查询”,如图3-6。在出现的交互式查询子窗口中选定表、指定列及查询准则等,即能交互式查询表或多表中的数据,如图3-7所示,不妨自己来实践各种查询操作。

图3-6 启动表查询

5


数据库原理及应用实验指导.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:新型空压机 - 涡旋空气压缩机

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: