实验三数据表的创建与管理
数据库及数据库表的创建与管理

《数据库技术》上机实验实验三数据库及数据库表的创建与管理一、实验目的熟悉和掌握数据库的创建和连接方法;熟悉和掌握数据表的建立、修改和删除;加深对表的实体完整性、参照完整性和用户自定义完整性的理解。
二、实验软件平台Windows XP/7/8/10操作系统;安装了SQL SERVER三、实验内容背景材料:在以下实验中,使用学生-课程数据库(school),它描述了学生的基本信息、课程的基本信息及学生选修课程的基本信息。
(要求使用命令的方式创建)1.创建学生-课程数据库create database schoolSno:char(9) Sname: varchar(6) Ssex:char(2) Sage:tinyint Sdept:char(2) Sno为主键,姓名不能为空,性别只能取男或女,年龄大于等于0。
Cno为主键,课程名不能为空,先行课可以为空,学分大于等于0Sno:char(9) Cno:varchar(3) grade: float主键是课程号和学号思考?成绩可以为空么?为什么?5.将以上创建表S、C、SC的SQL命令以.SQL文件的形式保存在磁盘上。
[文件操作的方式直接保存即可,这部分不用写在“四实验结果”中]温馨提示:到这部分内容做完为止,可以用数据库的备份功能将所建好的数据库及数据库表完全备份下来,下周的实验课程会利用这个表结构。
或者直接保存题5的SQL语句也可以,下次课直接执行这些sql文件,也可以达到保存的目的。
6.在表S上增加“出生日期”属性列。
7.删除表S的“年龄”属性列。
8.删除表SC,利用磁盘上保存的.SQL文件重新创建表SC。
9.修改C表,将学分的约束改为0到5之间10.修改S表的性别的类型,设置为char(1),并将约束改为0和1四实验结果1 create database school2 create table s(sno char(9) primary key,sname varchar(6) not null,Ssex char(2) check([Ssex]='男'or[Ssex]='女'),sage tinyint check(sage>0),)3 create table C(cno varchar(3) primary key,cname varchar(20) not null,Cpno varchar(3),Ccredit tinyint check(ccredit>0),)4 create table SC(sno char(9) primary key,Cno varchar(3) not null,Cpno varchar(3),Ccredit tinyint check(ccredit>0),)6 alter table sadd bith varchar(15)7 alter table Sdrop column Sage8 drop table SC9 alter table CAdd constraint thjrCheck(Ccredit>=0 and Ccredit<=5)10 alter table salter column ssex char(1)alter table sadd constraint lllllcheck(ssex=0 or ssex=1)五思考题1、定义表结构是对数据模型的哪个要素进行描述,对主属性有什么要求?答:完整性约束可以唯一标识一个元组的最少的属性2、修改表结构时,能否修改已定义属性的参数?新增加的属性列能否定义为非空?为什么?答:数据库表,修改表不能修改已经定义的属性参数,但是可以通过修改表的结构来修改已定义的性参数。
实验三表的创建与管理

1.在企业管理器中创建一个名为student的数据库,并在这个数据库 中创建一个名为“学生表”的表对象,并在表中输入一些记录。 “学生表”包含以下字段:“学号”字段的数据类型为int,不允许 NULL值,自动编号,种子(初始编号)为200001,增量为1;“姓 名”、“专业”、“年级”和“班级”字段的数据类型为char,字 段长度分别为6、20、4和2,这些字段均允许NULL值。
5. 绑定规则
创建规则: create rule 规则名 as 规则表达式 例:create rule tt as @score>=0and @score<=100 绑定规则:sp_bindrule 规则名,‘表名.字段’ 例:sp_bindrule tt,‘选课表.成绩’ 查看格式: sp_helptext 规则名 例: sp_helptext tt 删除绑定格式: sp_unbindrule ‘表名.字段’ 例: sp_unbindrule ‘选课表.成绩’ 删除默认格式: drop rule 默认名 例: drop rule tt
(2) PRIMARY 约束(实体完整性,设置为该约束的字 段不可为空,如要设置多字段组合,可按住Ctrl 键复选)
例 :单一字段作主键。学生表(学号,姓名,专业)。 create table 学生表 ( 学号 int not null primary key , …….) 例 :多字段组合做主键。成绩表(学号,课程编号,成绩) create table 成绩表 (学号 int not null , 课程编号 char(6) not null , --做主键的两项都不为空。 成绩 numeric, constraint pk primary key clustered(学号,课程编号) --设置该主键约束的名称为pk,是聚集索引,默认值也为 聚集索引,由学号和课程编号组合而成 )
实验三-数据表的创建与管理

实验三数据表的创建与管理一、实验目的要求学生熟练掌握SQL server Management Studio的使用和利用T-SQL语句进行数据表的创建和删除,并对数据表和表中数据进行有效的管理。
二、实验内容分别使用SQL Server Management Studio和T-SQL语句创建和删除数据表,修改表结构,输入数据、更新数据。
三、实验指导1. 数据表定义实验3.1在“JXGL”数据库中,使用SQL Server Management Studio建立S、C和SC 三个表,其结构如表表1.3.1 学生表S结构列名描述数据类型允许空值说明sno 学号char(8) NO 主键sname 姓名char(8) NOage 年龄Smallint YESsex 性别char(2) YESsdept 所在系Varchar(50) YES表1.3.2 课程表C结构列描述数据类型允许空值说明cno 课程号char(4) NO 主键cname 课程名char(20) NOcredit 学分Float YESpcno 先修课char(4) YESdescribe 课程描述varchar(100) YES表1.3.3 选课表SC结构列描述数据类型允许空值说明sno 学号char(8) NO主键(同时都是外键)cno 课程号char(4) NOgrade 成绩Float YES具体步骤如下:(1)在SQL Server Management Studio的对象管理器中,单击数据库前面的“+”号,选择“表”并击右键,在弹出的快捷菜单中选择“新建表”菜单项,则进入设计表字段对话框,如图图1.3.1设计字段对话框(2) 在设计表字段对话框中,共有三列参数:列名,数据类型,允许Null值。
“列名”就是数据库表的字段名,而“数据类型”是字段值的类型即整型、字符型、日期时间型等类型,“允许Null值”是用来设置该字段中的值能不能为空。
数据库实验-数据表创建与管理

广州XX学院数据库管理及应用实验报告专业班级计算机181 实验日期2020.4.18 姓名李XX 学号20181532 实验名称数据表创建与管理指导教师王琢(报告内容包括实验目的、实验设备及器材、实验内容、实验步骤、实验结果、实验小结等)一、实验目的要求学生熟练掌握和使用SQL Server Management Studio、T-SQL语句创建和删除数据库,并对数据表和表中的数据进行有效的管理。
二、实验设备及器材Windows平台、SQL Server 2012。
三、实验内容实验3.1在学生管理数据库EDUC中利用T-SQL语句创建数据表。
习题3.2分别使用SQL Server Management Studio、T-SQL语句创建图管理数据库TSGL中的4个数据表的结构,即readers(读者信息表)、books(图书信息表)、borrowinf (借阅信息表)、readtype(读者类型表)。
习题3.3利用SQL Server Management Studio、T-SQL分别向表中输入数据。
习题3.4依照上述实验完成下列操作。
1)用INSERT命令在readers表中插入两条记录。
2)用UPDATE命令将readtype表中教师的限借阅数量改为30、借阅期限改为180天。
3)用DELETE命令删除书名为“数据结构”的图书信息。
四、实验步骤3.11)院系信息表Dept_infoUSE EDUCGOCREATE TABLE Dept_info(Don char(4)primary key,dname char(16)NOT NULL,d_chair char(8),d_address varchar(50),tel char(20))GO2)班级信息表Class_infoUSE EDUCGOCREATE TABLE Class_info(classno char(4)primary key,classname char(16)not null,monitor char(8),instructor char(8),tel char(12),dno char(4),foreign key (dno)REFERENCES Dept_info(dno))GO3)学生信息表Student_infoUSE EDUCGOCREATE TABLE Student_info(sno char(8)primary key,sname char(8)not null,sex char(2),s_native varchar(50),birthday smalldatetime,dno char(4),classno char(4),entime smalldatetime,home varchar(50),tel char(12),foreign key(dno)REFERENCES Dept_info(dno),foreign key(classno)REFERENCES Class_info(classno) )GO4)教师信息表Teacher_infoUSE EDUCGOCREATE TABLE Teacher_info(tno char(8)primary key,tname char(8)not null,sex char(2),birthday smalldatetime,dno char(4),title char(14),home varchar(50),tel char(12),foreign key(dno)REFERENCES Dept_info(dno))GO5)课程信息表Course_infoUSE EDUCGOCREATE TABLE Course_info(cno char(10)primary key,cname char(20)not null,experiment tinyint,lecture tinyint,semester tinyint,credit tinyint)GO6)学生成绩信息表SC_infoUSE EDUCGOCREATE TABLE SC_info(sno char(8)primary key,tcid char(2)not null,score tinyintforeign key(sno)REFERENCES Student_info(sno) )GO7)教师上课信息表TC_infoUSE EDUCGOCREATE TABLE TC_info(tcid char(2)primary key,tno char(8),score tinyint,classno char(4),cno char(10)not null,semester char(6),schoolyear char(10),classroom varchar(50),classtime varchar(50),foreign key(tno)REFERENCES Teacher_info(tno), foreign key(classno)REFERENCES Class_info(classno), foreign key(cno)REFERENCES Course_info(cno))GO3.2使用SQL Server Management Studio建表:1)readers(读者信息表)2)books(图书信息表)3)borrowinf(借阅信息表)4)readtype(读者类型表)T-SQL语句建表(TSGL):(1)readers(读者信息表)USE TSGLCREATE TABLE readers(ReaderID char(10) NOT NULL, Name char(8),ReaderType int, BorrowedQuantity int)(2)books(图书信息表)USE TSGLCREATE TABLE books(BookID char(15) NOT NULL, Name varchar(50),Author char(8),Publisher varchar(30), PublishedDate smalldatetime, Price real NULL)(3)borrowinf(借阅信息表)USE TSGLCREATE TABLE borrowinf(ReaderID char(10) NOT NULL, BookID char(15) NOT NULL, BorrowedDate datetime NOT NULL, ReturnDate datetime)(4)readtype(读者类型表)USE TSGLCREATE TABLE readtype(TypeID int NOT NULL,Name varchar(20) NOT NULL,LimitBorrowQuantity int,BorrowTerm int)3.3利用SQL Server Management Studio、T-SQL分别向表中输入数据。
实验三-表的创建和管理

实验三表的创建和管理开课实验室:指导老师:学院:专业(班级):姓名:学号:一、实验目的与要求1)掌握利用企业管理器和T-SQL语句创建表,修改表结构以及删除表2)能够向表中插入数据、更新数据以及删除数据。
3)掌握创建、删除和修改约束的方法二、实验过程设计及实验步骤1.创建表,并创建相应的约束。
要求:在学生管理数据库XSGL中创建三个表。
(1)创建名为Student(学生信息)的表,表中的各列要求如下:( Sno char(10)primary key,Sname char(8),sex char(2)default'男'constraint dd check(sex='男'or sex='女'),birthday datetime,dept char(20),)(2)创建名为Course(课程信息)的表,表中的各列要求如下:( Cno char(10) primary key,Cname char(30) constraint ss unique,Ceredit real)(3)建名为Score(学生成绩)的表,表中的各列要求如下:(Sno char(10) references student(Sno),Cno char(10) references course(Cno)primary key(Sno,Cno),Grade real constraint ww check(grade >= 0 and grade<=100))2.增加、修改和删除字段,要求:(1)给Student表增加一个memo(备注)字段,类型为Varchar(200) alter table studentaddmemo Varchar(200)(2)将memo字段的类型修改为Varchar(300)alter table studentalter columnmemo varchar(300)(3)删除memo 字段alter table studentdrop column memo3.向表中添加数据、更新数据、删除数据并验证约束。
实验3 创建数据表

实验3 创建数据表(二)一、实验目的1.熟悉将各种数据导入到数据表中的方法。
2.学会各种类型数据的输入方法。
3.学习值列表和查阅列表字段的创建方法。
4.学会如何设置数据表的格式。
二、实验内容实验3-1将Excel文件导入到Access的表中。
1.实验要求将已经建好的Excel文件“学生简况表.xls”导入到“教学信息管理”数据库中,数据表的名称为“学生简况表”。
2.操作步骤(1)打开“教学信息管理”数据库,在数据库窗口中,选择“文件|获取外部数据|导入”菜单命令,弹出“导入”对话框,在“查找范围”中指定文件所在的文件夹,然后在“文件类型”下拉列表中选择“Microsoft Excel”选项,如图3-1所示。
图3-1 指定导入文件的“文件类型”(2)选取“学生简况表.xls”(该文件已经存在),再单击“导入”按钮。
(3)在“导入数据表向导”的第1个对话框中勾选“第一行包含列标题”复选框,如图3-2所示,单击“下一步”按钮,弹出“导入数据表向导”的第2个对话框,如图3-3所示。
图3-2 选取“第一行包含列标题”图3-3 保存在“新表中”(4)在图3-3中,选择“新表中”单选按钮,表示来自Excel工作表的数据将成为数据库的新数据表,再单击“下一步”按钮,弹出“导入数据表向导”的第3个对话框,如图3-4所示。
(5)在图3-4中,如果不准备导入“学号”字段,在“学号”字段单击鼠标左键,再勾选“不导入字段(跳过)”复选框。
在此不勾选,完成后单击“下一步”按钮,弹出“导入数据表向导”的第四个对话框,如图3-5所示。
图3-4 处理导入字段图3-5 设置主键(6)在图3-5中选择“让我自己选择主键”单选按钮,并选择“学号”字段作为主键,再单击“下一步”按钮,弹出“导入数据表向导”的第五个对话框,如图3-6所示。
图3-6 指定数据表的名称(7)单击“完成”按钮,弹出“导入数据表向导”结果提示框,如图3-7所示,提示数据导入已经完成。
实验三 数据库和数据表的创建

实验三创建数据库和数据表一、实验目的1. 掌握使用SQL Server Management Studio创建数据库的方法与步骤2. 掌握创建数据库的SQL 语句3、掌握使用SQL Server Management Studio创建数据表的方法与步骤4、掌握创建数据表的SQL 语句背景知识在SQL Server中,数据库是由数据库文件和事务日志文件组成的。
一个数据库至少应包含一个数据库文件和一个事务日志文件。
数据库文件是存放数据库数据和数据库对象的文件。
一个数据库可以有一个或多个数据库文件,当有多个数据库文件时,有一个文件被定义为主数据库文件,扩展名为.mdf,它用来存储数据库的启动信息和部分或全部数据,一个数据库只能有一个主数据库文件。
其它数据库文件被称为次数据库文件,扩展名为.ndf,它主要用来存储除主数据文件外的所有数据文件。
一个数据库可以没有次数据库文件,但也可以同时拥有多个次数据库文件。
事务日志文件是用来记录数据库更新情况的文件,扩展名为.ldf。
它包含恢复数据库所需的所有日志信息。
每个数据库必须至少有一个日志文件。
文件组是将多个数据库文件集合起来形成的一个整体。
每个文件组有一个组名。
文件组分为主文件组和用户定义文件组。
一个文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用。
注:事务日志文件不属于任何文件组。
二、实验内容与步骤2.1 操作内容:●创建一个名为“testdb”数据库:(1)包含一个数据文件,逻辑文件名“testdb_data”,磁盘文件名‘d:\testdb-data.mdf’,文件初始容量为5MB,最大容量为15MB,文件容量递增值为1MB;(2)包含一个事务日志文件,逻辑文件名为‘d:\testdb_log’, 磁盘文件名“testdb_log.ldf”,文件初始容量为5MB,最大容量为10MB,文件容量递增值为1MB;●对数据库作如下修改:(1)添加一个数据文件,逻辑文件“testdb2_data”,磁盘文件名“d;\testdb2_data.ndf”,文件初始容量为1MB,最大容量为6MB,文件容量递增值为1MB;(2)将事务日志文件的最大容量增加为15MB,递增值改为2MB;在testdb数据库下创建一个members(会员表),表结构如下:表1 表Members(会员表)2.2 实验步骤:方式一:使用SQL Server Management Studio创建和修改数据库1、创建数据库1. 单击“开始”,指向“程序”,指向“Microsoft SQL Server 2005”,然后单击“SQL Serv erManagement Studio”。
实验3 表的创建与管理

实验三表的创建与管理目的和要求1.巩固数据库的基础知识;2.掌握创建与删除表的两种方法;3.掌握修改表结构的方法。
内容和步骤一、表的创建1.利用企业管理器创建表1)打开企业管理器。
2)选中创建好的数据库,单击数据库中的表对象,然后右击窗口右侧选择新建表,弹出如图所示窗体。
3)在这个窗体中,列名列就示表的字段名,可以在这个窗体中为字段选择数据类型和长度以及是否可以为空值。
4)在此处可以为表选择文件组,在表中单击右键,选择属性,如果已经为数据库创建了一个次要组,可以在属性窗体的表文件组中为此表选择文件组。
应该把一些竞争使用的表放于不同的文件组中,并且让文件组属于不同磁盘,这样可以在表竞争读写时提高并发性能。
5)创建完成后,单击磁盘图标,并为表取一个名字,注意,应该为表取一个有意义的名字。
2.用Transact_SQL语句创建表语法为:CREA TE TABLE[ database_name.[owner].] table_name( {column_name data_type [DEFAULT ‘default_value’]|[CONSTRAINT constraint_name]}, […n] [IDENTITY [(seed, increment )]])[ON { filegroup | DEFAULT }][TEXTIMAGE_ON {filegroup | DEFAULT }]例1:生成一个表名为student的表例2 创建一张名为Ta1的表,此表中有3列,第一列Pid定义为主键,并且自动增长。
第二列Name默认值为Unknown,第三列定义一个约束(日期不能大于输入当天的日期),插入一条记录并进行查询,显示如下图。
二、表的修改1.1.用企业管理器修改表⑴右键点击所要修改的学生表,选择“设计表”,会弹出如图所示的窗体,在这个窗体中可以更改数据表的字段。
在空白处点右键,选择“属性”,弹出另一窗体,在此可以更改约束,也可以增加约束。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三数据表的创建与管理
一、实验题目
数据表的创建与管理
二、实验目的
要求学生熟练掌握使用SQL Server Management Studio和利用T-SQL语句进行数据表的创建和删除,并对数据表和表中的数据进行有效的管理。
三、实验内容
1、使用SQL Server Management Studio创建和删除数据表、修改表结构、更新数据。
2、使用T-SQL语句创建和删除数据表、修改表结构、更新数据。
四、实验项目
(一)表的创建
1、使用SQL Server Management Studio创建表
实验3.1在JXGL数据库中,使用SQL Server Management Studio建立S、C和SC三个表,其结构如下3-1~3-3所示。
表3-1 学生表S的结构
表3-3 选课表SC的结构
步骤如下:
①在“对象资源管理器”中单击“JXGL”前面的“+”号,选择“表”并右键单击,在弹出的快捷菜单中选择“新建表”命令,打开设计表字段对话框,如图3-1所示。
图3-1 设计表字段对话框
②在设计表对话框中分别输入“列名”、“数据类型”和“允许NUll值”3个参数的值。
③设计完表的字段后,单击“保存”按钮,弹出保存对话框,如图3-2所示,在输入表名称中更改表名;或者单击“关闭”按钮,弹出是否要保存更改的提示对话框,如图3-3所
示。
图3-2 保存对话框
图3-3 是否要保存更改的提示对话框
1、使用T-SQL语句创建数据库
实验3.2在学生管理数据库EDUC中,利用T-SQL语句创建数据表。
表结构如下表3-4~3-10所示。
表3-4学生信息表Student_info的结构
表3-6 学生成绩信息表SC_info的结构
表3-7 教师信息表Teacher_info的结构
表3-10 教师上课信息表TC_info的结构
①创建院系信息表Dept_info
USE EDUC
GO
CREATE TABLE Dept_info
(
Dno char(4) primary key,
Dname char(16) not null,
Dchair char(8),
Daddress varchar(50),
Tel char(12)
)
GO
②创建班级信息表Class_info
USE EDUC
GO
CREATE TABLE Class_info
(
Classno char(4) primary key,
Classname char(16) not null,
Monitor char(8),
Dno char(4) not null,
FOREIGN KEY (Dno) REFERENCES Dept_info(Dno) )
GO
③创建学生信息表Student_info
USE EDUC
GO
CREATE TABLE Student_info
Sno char(8) primary key,
Sname char(8) not null,
Sex char(2),
Sbirthday smalldatetime,
Dno char(4),
Classno char(4),
Tel char(12),
Snative varchar(10),
Address varchar(50),
FOREIGN KEY (Dno) REFERENCES Dept_info(Dno),
FOREIGN KEY (Classno) REFERENCES Class_info(Classno)
)
GO
其他数据表的创建代码类似,此处不再一一列出。
(二)修改表结构
1、使用SQL Server Management Studio修改表结构
选定要修改的数据表,然后右键单击,在弹出的快捷菜单中选择“设计”命令,打开设计表结构的修改界面进行修改。
2、使用T-SQL语句修改表结构
实验3.3在学生表S中增加家长姓名字段“Parentname”,其类型为字符串类型(char),长度为8。
在数据库引擎查询文档中输入以下语句:
USE JXGL
GO
ALTER TABLE S
ADD Parentname char(8)
GO
实验3.4 修改学生表S中的家长姓名字段“Parentname”的长度为10。
在数据库引擎查询文档中输入以下语句:
USE JXGL
GO
ALTER TABLE S
ALTER COLUMN Parentname varchar(10)
GO
实验3.5 删除学生表中的家长姓名字段“Parentname”。
在数据库引擎查询文档中输入以下语句:
USE JXGL
ALTER TABLE S
DROP COLUMN Parentname
GO
注意:
(1)输入数据时要注意数据类型、主键和数据约束的限制。
(2)更改和删除数据时要注意外键约束。
(三)数据输入和更新
1、使用SQL Server Management Studio输入和修改数据
实验3.6在JXGL数据库的学生表中输入数据。
在“对象资源管理器”中展开“数据库”→“JXGL”→“表”,右键单击要输入数据的表“dbo.S”,在弹出的快捷菜单中选择“编辑前200行”命令,在打开的窗口中输入数据,
界面如图3-3所示。
图3-3 输入和修改数据界面
如果要修改某条记录内容,选择该记录所对应的字段项直接进行修改;如果要删除某条记录,选择该行行头右键单击,在弹出的快捷菜单中选择“删除”命令,在弹出的删除提示对话框中选择“是”按钮。
注意:对于有外键字段值的输入,要输入被参照数据表中的数据。
2、使用T-SQL语句实现数据的插入和更新
实验3.7向JXGL数据库S表中插入记录('S10', '魏丽晨', 18, '女', 'CS')。
在数据库引擎查询文档中输入以下语句:
USE JXGL
GO
INSERT INTO S(Sno,Sname,Sage,Sex,Sdept)
V ALUES('S10','魏丽晨',18,'女','CS')
GO
正确输入后,单击”执行“按钮执行该SQL语句,这样就可以向S表中插入数据了。
实验3.8将JXGL数据库中学号为“S10”的学生所修课程号为“C10”的课程成绩修改为80分。
在数据库引擎查询文档中输入以下语句:
USE JXGL
GO
UPDATE SC
SET Grade=80 WHERE Sno='S10' and Cno='C10'
GO
实验3.9在JXGL数据库SC表中删除学号为“S10”且课程号为“C10”的记录。
在数据库引擎查询文档中输入以下语句:
USE JXGL
GO
DELECT FROM SC
WHERE Sno='S10'and Cno='C10'
GO。