表格模板-11春数据库实验3 表的创建、管理和数据操纵4学时 精品

合集下载

表的创建与维护以及数据操纵

表的创建与维护以及数据操纵

感谢您的观看
THANKS
表的删除与重建
删除
在某些情况下,可能需要删除表或表中的数据。删除操作可 以是简单的删除表中的行,也可以是完全删除整个表。
重建
如果表出现性能问题、损坏或过时,可能需要重建表。重建 操作可以重新创建表的结构,包括索引、触发器、存储过程 等,并可能重新组织数据的物理存储。
05 数据操纵的实践应用
数据操纵在电子商务中的应用
பைடு நூலகம்恢复
如果发生数据丢失或损坏,可以通过 恢复备份来恢复数据。恢复操作可以 还原整个数据库、单个表或特定数据 。
表的优化与调整
优化
随着数据的增加和查询的频繁执行,数据库表的性能可能会下降。优化表可以提 高查询速度和响应时间,通常包括对表进行重新组织、重建索引或调整存储参数 。
调整
根据业务需求和数据增长,可能需要调整表的存储参数、索引或分区策略。调整 可以确保表在性能、存储和可管理性方面保持最佳状态。
外键约束
确保参照完整性,即引用表中 的数据在所引用的表中存在。
非空约束
确保某列必须有值,不能为空 。
唯一约束
确保某列的值是唯一的,没有 重复值。
02 表的数据操纵
插入数据
使用INSERT INTO语句
01
通过指定表名和要插入的数据,使用INSERT INTO语句将新记
录插入到表中。
插入多行数据
02
一个学生选修多门课程,一门课程 有多个学生选修。
数据库实现
通过引入第三个表(关联表)来实 现多对多关系,关联表包含两个外 键列,分别引用两个相关表的主键 列。
04 表的维护
表的备份与恢复
备份
定期对数据库表进行备份是至关重要 的,以防数据丢失或损坏。备份可以 包括整个数据库、单个表或仅特定数 据。

实验 第3章数据库表的建立

实验 第3章数据库表的建立

• 2、建立课程表(kc.dbf)结构 • 【实验要求】使用菜单方式打开表设计器创建表 结构 • 【实验步骤】 • (1)选择“文件|新建”,打开“新建”对话框。 • (2)在“新建”对话框中,选择文件类型为 “表”,单击“新建文件”,打开“创建”对话 框。 • (3)在“创建”对话框中,确定文件的保存位置 为xjgl-3文件夹,文件名为kc.dbf。单击“保存” 按钮,打开表设计器。
• 【实验提示】使用DELETE FROM-SQL命令不需 要打开表,而使用DELETE命令需要事先打开表。 • 10、物理删除学生表(XS.dbf)中添加了删除标记 的记录。 • 【实验要求】使用菜单方式实现,PACK命令方 式自行练习。 • 【实验步骤】 • (1)打开学生表(xs.dbf)的浏览窗口。 • (2)选择“表|彻底删除”菜单项,在弹出的对话 框中单击“是”。
• 6、给课程表(kc.dbf)输人数据记录 • 【实验要求】请参照3.1.4节中除“显示I追加 方式”外的其他几种输入记录的方式,按照附表4 向课程表(kc.dbf)中输人数据记录。 • 【实验提示】 • (1)通过“表l追加新记录”菜单项输入附表4中 第1条课程记录。 • (2)通过“表1追加记录…”菜单项将xjgl-3文件 夹中kca.dbf中的数据记录追加到kc.dbf中。 • (3)通过APPEND BLANK命令输入附表4中第4 条课程记录。 • (4)通过APPEND FROM命令将xjgl-3文件夹中 kca.dbf中的数据记录追加到kc· dbf中。
• (3)在命令窗口中,输入条件定位命令,结合 CONTINUE命令进行连续条件定位,将 • 记录指针依次定位到系院编号为“02”且为“党 员”的学生记录上。在每条定位命令后,输 入?RECNO()观察记录指针的变化。 • 5、使用界面方式埘课程表(kc.dbf)中的记录进行 批量修改。 • 【实验要求】使用界面方式将课程表(kc.dbf)中 所有学时数为32的课程的“bxk”字段值改为.F.。 • 【实验步骤】 • (1)打开课程表(kc.dbf)的浏览窗口。 • (2)选择“表|替换字段……”菜单项,打开“替 换字段”对话框。

MySQL数据表创建与数据操纵

MySQL数据表创建与数据操纵

实验三数据表创建与数据操纵(2)一、实验目的1.掌握表的基础知识;2.熟练掌握在图形化工具(navicat)中创建、修改和删除数据表的方法;3.熟练掌握在命令行工具中使用SQL语句创建、修改和删除数据表的方法;4.熟练掌握使用SQL语句完成表数据的添加、修改和删除操作。

二、实验软件环境:操作系统:Microsoft Windows Win7 64bit / Windows10 64bit 数据库管理系统:MySQL 8.0/Navicat 9三、实验学时4学时四、实验内容及步骤1、创建一个Teach数据库。

2、在Teach数据库中分别创建S、C、SC三个表,表结构描述如下:第一个表,表名称为:S第二个表,表名称为:C第三个表,表名称为:GRADE2、显示以上创建的三个表的结构3、修改表为S表增加一个字段,字段名为”TEL”,类型为char(11)将S表的xy字段的数据类型修改为varchar(20)。

将S表的xy字段名改为zy,(zy表示专业)。

将S表的“TEL”字段删除。

将C表的xf字段的位置改到xs的前面。

将GRADE表名称更改为SC。

4、删除表(1)新建一个AA表,只包含一个字段“test”,int类型。

(2)删除AA表。

5、添加数据为S表插入如下表所示记录(8条记录),写出INSERT INTO语句的代码,并执行。

为C表插入如下表所示记录(8条记录),写出INSERT INTO语句的代码,并执行。

为SC表插入如下表所示记录(19条记录),写出INSERT INTO语句的代码,并执行。

6、修改数据(1)修改S表中xh为’091501’的记录,将csrq改为’2000-11-15’(2)修改C表中kcm为’计算机网络基础’的课程,xf改为3,xs 改为487、删除数据删除SC表cj字段为null的记录。

五、实验过程及结果操作命令及截图六、实验总结及问题。

数据库及数据库表的创建与管理

数据库及数据库表的创建与管理

《数据库技术》上机实验实验三数据库及数据库表的创建与管理一、实验目的熟悉和掌握数据库的创建和连接方法;熟悉和掌握数据表的建立、修改和删除;加深对表的实体完整性、参照完整性和用户自定义完整性的理解。

二、实验软件平台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,是聚集索引,默认值也为 聚集索引,由学号和课程编号组合而成 )

数据库实验3 表的创建、管理和数据操纵(4学时)

数据库实验3 表的创建、管理和数据操纵(4学时)

数据库实验3 表的创建、管理和数据操纵(4学时)实验三表的创建、管理和数据操纵(4学时)【实验目的】了解SQL语言的使用,进一步理解关系运算,巩固数据库的基础知识。

【实验要求】利用SQL语言进行数据库表的各种操作:1.数据库表的创建、修改和删除操作。

2.向表中进行数据的插入、删除和修改操作。

【实验内容】1. 利用数据定义语句在实验一创建的stu_DB库中建立学生管理系统的三个表:Student、Course、SC。

2.利用INSERT、UPDATE和DELETE 语句对上述三张表的数据进行插入、更新和删除操作。

3.在stu_DB库中添加Teacher和TC表,对已建立的学生管理系统中的表添加充足的数据(每个表不少于20条),以便完成本实验的后继操作。

【实验步骤】一、数据定义(一)表的创建在实验一创建的数据库stu_DB中分别用企业管理器和查询分析器,按下面的表结构创建学生管理系统的表。

表3-1 Student表结构列名说明数据类型约束Sno 学号字符串,长度为8主码Sname 姓名字符串,长度为10非空Ssex 性别字符串,长度为2’男’或’女’Sage 年龄整数15~45Sdept 所在系字符串,长度为20默认为’计算机系’表3-2 Course表结构列名说明数据类型约束Cno 课程号字符串,长度为8主码Cname 课程名字符串,长度为20非空Cpno 先修课程号字符串,长度为8Ccredit 学分整数取值:1~6 Semster 学期整数取值:1~8Period 学时整数取值:≥0 表3-3 SC表结构列名说明数据类型约束Sno 学号字符串,长度为8主码,引用student的外码Cno 课程号字符串,长度为8主码,引用course的外码Grade 成绩整数取值:0~100 1.利用企业管理器创建表(1)打开企业管理器。

(2)选中实验一创建好的数据库stu_DB,单击数据库中的表对象,然后右击窗口右侧选择新建表,弹出如图所示窗体。

《数据库》课件——项目3 表的创建与维护

《数据库》课件——项目3 表的创建与维护
• 创建表之前,应该仔细评估需求并规划数据库,以确定所
需要的表。在一个数据表中可以包含多个数据表,每个表 用于存储有关不同主题的信息。
字段的数据类型主要有以下几种方法:
• 文本 • 数字 • 日期/时间 • 货币 • 自动编号
• 是/否 • 备注 • OLE对象 • 超级链接 • 查阅向导
注:对电话号码、零件编号和其他不会用于数学计算的数字,应该选 择文本数据类型,而不是数字数据类型。
创建表的方法
1、使用向导创建表
• 在“表”对象面板中单击“新建”—“表向导”或单击
“使用向导创建表”
2、使用数据表视图创建表
• 在“表”对象面板中单击“新建”—“数据表视图”
3、使用设计视图创建表
• 在“表”对象面板中单击“新建”—“设计视图”或单击
“使用设计器创建表”
4、通过导入创建表
• 在“表”对象面板中单击“新建”—“导入表”
3、高级排序
• 如果要将数据表中的多个字段进行排序,并且按照不同的排序方式,
需要使用Access的高级排序。
• 方法:选择菜单“记录—筛选—高级筛选/排序”,在打开的筛选窗
口中添加需要排序的字段,选择排序方式。设置完成后,选择菜单 “筛选—应用筛选/排序”。
任务六 数据的筛选
筛选就是选择查看记录,将需要的记录从表中筛选出 来,并不是删除记录。筛选时必须设定筛选条件,将符合 条件的记录筛选出来。
• 方法:将光标置于任意一个“系别”为“文学系”的单元格中,选择“记
录—筛选—内容排除筛选”。 3、按窗体筛选:是一种快速的筛选方法,可设置多个筛选条件。
• 方法:打开表,选择“记录—筛选—按窗体筛选”或单击工具栏上的“按窗
体筛选”按钮,在打开的筛选窗口中,设置筛选条件后选择“筛选—应用筛 选/排序”。 4、高级筛选:是处理复杂问题的一种筛选方法,需要使用比较复杂的条件表达 式。

数据库表的创建与管理操作指南

数据库表的创建与管理操作指南

数据库表的创建与管理操作指南1. 引言数据库表是存储和组织数据的重要组成部分。

在创建和管理数据库表时,我们需要遵循一些基本原则和最佳实践,以确保数据库的性能、可维护性和安全性。

本文将为您提供数据库表的创建与管理操作指南,帮助您正确地进行数据库表的设计和管理。

2. 数据库表的创建在创建数据库表之前,我们需要进行一些必要的准备工作。

首先,我们需要明确数据库中需要存储的数据类型和结构。

其次,我们需要了解数据库系统的特点和限制,例如支持的数据类型、最大表大小等。

2.1 数据类型选择数据库系统通常支持多种数据类型,包括整数、字符串、日期和时间等。

在选择数据类型时,我们应根据实际需求和数据特性进行选择,以节约存储空间和提高查询效率。

2.2 表的设计在进行表的设计时,我们需要关注以下几个方面:- 数据表的命名:选择一个有意义且易于理解的表名,能够准确反映表所存储的数据内容。

- 数据字段的命名:选择有意义的字段名,能够清晰地描述字段的含义。

避免使用过长或含有特殊字符的字段名。

- 主键的选择:每个表中应当有一个主键,用于唯一标识表中的每一行数据。

主键可以是一个或多个字段的组合。

- 索引的创建:为经常用于查询条件的字段创建索引,可以提高查询效率。

- 外键的使用:在存在关联关系的表之间,可以使用外键来维护数据的完整性和逻辑关系。

3. 数据库表的管理一旦数据库表被创建,我们需要进行有效和安全的管理以确保数据的完整性和系统的高性能。

3.1 表的修改在进行表的修改时,我们需要注意以下几点:- 添加字段:可以使用ALTER TABLE语句向表中添加新字段。

添加字段时,需要仔细考虑如何维护已有数据的完整性。

- 修改字段:使用ALTER TABLE语句可以修改表中的字段。

修改字段时,需要注意是否会影响已有数据的完整性和查询性能。

- 删除字段:使用ALTER TABLE语句可以删除表中的字段。

删除字段时,需要确保不影响已有数据的完整性。

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

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

实验三数据库和表的创建与管理实验三数据库和表的创建与管理实验三数据库和表的创建与管理【实验题目】数据库和表的创建和管理【实验目的】1.加深对数据库、数据模型、数据库管理系统、数据库系统等基本概念的理解。

2.学习使用enterprise manager创建和修改数据库和表结构。

3.了解表的结构特征和SQL server的基本数据类型。

【实验准备】1.数据模型的三个组成部分:数据结构、数据操作和完整性约束。

(1)数据结构。

数据结构用于描述系统的静态特性,是所研究的对象类型的集合。

数据模型按其数据结构分为层次模型、网状模型和关系模型。

(2)数据操作。

数据运算用于描述系统的动态特性。

它是指允许对数据库中各种对象的实例执行的操作集,包括操作和相关操作集。

(3)数据的约束条件。

数据的约束条件是一组完整性规则的集合。

完整性规则是给定的数据及其联系所具有的制约和存储规则,用以限定符合数据库状态以及状态的变化,以保证数据的正确、有效和相容。

2.关系模型的三个组成要素是关系数据结构、关系操作和关系完整性约束的概念、内容和主要特征。

3、关系的完整性关系模型的完整性规则是对关系的约束。

关系模型中有三种类型的完整性约束:实体完整性、引用完整性和用户定义的完整性。

实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称作是关系的两个不变性,应该由关系系统自动支持。

(1)实体完整性规则。

如果属性a是基本关系R的主属性,则属性a不能为空。

(2)请参阅完整性规则。

如果属性(或属性组)f是基本关系R的外部代码,它对应于基本关系s的主代码KS(基本关系R和s不一定是不同的关系),F上R中每个元组的值必须为:或null(F的每个属性值为null)或等于S中元组的主代码值。

(3)用户定义完整性规则。

用户定义的完整性是针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求。

关系模型应提供定义和检验这类完整性的机制,以便用统一的系统的方法处理它们,而不要由应用程序承担这一功能。

数据库及数据库中表的建立实验报告

数据库及数据库中表的建立实验报告

数据库及数据库中表的建立实验报告一、实验目的本次实验的主要目的是熟悉数据库管理系统的操作环境,掌握数据库及数据库中表的建立方法,理解数据库设计的基本概念和原则,提高数据管理和组织的能力。

二、实验环境本次实验使用的数据库管理系统是 MySQL 80,操作系统为Windows 10。

三、实验内容及步骤(一)数据库的建立1、打开 MySQL 命令行客户端,输入用户名和密码登录到数据库服务器。

2、使用`CREATE DATABASE` 语句创建数据库,例如:`CREATE DATABASE my_database;`,其中`my_database` 为数据库的名称。

(二)表的建立1、选择要操作的数据库,使用`USE` 语句,如:`USEmy_database;`。

2、使用`CREATE TABLE` 语句创建表。

以下是创建一个名为`students` 的表的示例,其中包含`id`(整数类型,主键,自增)、`name`(字符串类型,长度为 50)、`age`(整数类型)和`grade`(浮点数类型)等字段:```sqlCREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50),age INT,grade FLOAT);```(三)数据的插入1、使用`INSERT INTO` 语句向表中插入数据。

例如:```sqlINSERT INTO students (name, age, grade)VALUES ('张三', 20, 855);INSERT INTO students (name, age, grade)VALUES ('李四', 21, 900);```(四)数据的查询1、使用`SELECT` 语句查询表中的数据。

例如,查询所有学生的信息:```sqlSELECT FROM students;```2、可以根据条件进行查询,如查询年龄大于 20 岁的学生:```sqlSELECT FROM students WHERE age > 20;```(五)数据的更新1、使用`UPDATE` 语句更新表中的数据。

实验三 数据库中表的基本操作

实验三 数据库中表的基本操作

实验三数据库中表的基本操作姓名:林虹学号:20104510 一、实验目的通过本次实验使学生掌握SQL Server的基本数据类型,数据库中表的基本操作。

二、实验内容1、数据库表的建立及其基本操作2、更改表的结构3、向表中添加数据三、实验环境1、Windows XP2、SQL Server 2005四、实验步骤1、建立一个数据库,文件名为“STUDENT”。

操作步骤:在SQL操作环境下的对象资源管理器中右击“数据库”,在弹出的快捷菜单中选择“新建数据库”,在打开的“新建数据库”窗口中的“数据库名称”输入框中输入STUDENT后单击“确定”按钮。

2、在“STUDENT”数据库中用企业管理器创建名为“学生”的表,结构如下:学号:char(12)姓名:char(8)性别:char(2)专业代码:char(10)班级代码:char(10)出生日期:datetime操作步骤:(1)展开“STUDENT”数据库,右击其下面的“表”项目,在弹出的快捷菜单中选择“新建表”。

(2)在打开的表设计器中编辑表结构。

表结构建立好之后如下图:(3)单击表设计器的关闭按钮(叉号),在弹出的“保存对以下各项的更改吗”提示对话框中单击“是”按钮。

(4)在打开的“选择名称”对话框中输入表名:学生,再单击“是”按钮。

3、在“STUDENT”数据库中用T-SQL语言创建名为“教师”的表,结构如下:教师编号:char(6)姓名:char(8)性别:char(2)授课科目:char(16)操作步骤:(1)打开查询分析器,输入的命令如下:(2)输入完命令之后单击“执行”按钮,消息框会显示“命令已成功完成”字样。

4、1)为“学生”表添加“身份证号”字段,该字段数据类型为char,长度为18,不能为空(用企业管理器实现)。

2)再添加“家庭住址”字段,该字段数据类型为char,长度为20(用SQL语言来实现)。

3)将“姓名”字段修改为“学生姓名”字段,长度为8。

【精品】实训一数据库和表的创建

【精品】实训一数据库和表的创建

【关键字】精品实训一数据库和表的创建实训目的(1) 掌握数据库和表的基础知识。

(2) 掌握使用企业管理器和Transact-SQL语句创建数据库和表的方法。

(3) 掌握数据库和表的修改、查看、删除等基本操作方法。

实训内容和要求1.数据库的创建、查看、修改和删除(1) 使用企业管理器创建数据库创建成绩管理数据库Grademanager,要求见表10-1。

表10-1 Grademanager数据库参数表(2) 查看与修改数据库属性① 在企业管理器中查看创建后的grademanager数据库,查看grademanager_data.mdf、grademanager_log.ldf两个数据库文件所处的文件夹。

② 使用企业管理器更改数据库。

更改的参数见表10-2。

表10-2 要更改的参数表(3) 使用企业管理器删除该数据库(4) 使用Transact-SQL命令创建上述要求的数据库(5) 使用Transact-SQL命令查看和修改上述要求的数据库(6) 使用Transact-SQL命令删除该数据库2.表的创建、查看、修改和删除(1) 在Grademanager数据库中创建如表10-3、表10-4和表10-5所示结构的表。

表10-3 Student表的表结构表10-4 Course表(课程名称表)的表结构表10-5 SC表(成绩表)的表结构(2) 向表10-3、表10-4和表10-5输入数据记录,见表10-6、表10-7和表10-8。

表10-6 学生关系表Student表10-7 课程关系表Course表10-8 成绩表SC(3) 修改表结构。

① 向student表中增加“入学时间”列,其数据类型为日期时间型。

② 将student表中的sdept字段长度改为20。

③ 将student表中的Speciality字段删除。

(4) 删除student表。

思考题(1) SQL Server的数据库文件有几种?扩展名分别是什么?(2) SQL Server 2000中有哪几种整型数据类型?它们占用的存储空间分别是多少?取值范围分别是什么?(3) 在定义基本表语句时,NOT NULL参数的作用是什么?(4) 主码可以建立在“值可以为NULL”的列上吗?实训二单表查询实训目的(1) 掌握SELECT语句的基本用法。

实验三 数据库和数据表的创建

实验三 数据库和数据表的创建

实验三创建数据库和数据表一、实验目的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”。

实验三数据表的创建与管理.doc

实验三数据表的创建与管理.doc

实验三数据表的创建与管理一、实验目的要求学生熟练掌握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值”是用来设置该字段中的值能不能为空。

数据库原理实验报告实验三数据表的创建与管理实验

数据库原理实验报告实验三数据表的创建与管理实验

南京晓庄学院《数据库原理与应用》课程实验报告实验三数据表的创建与管理实验所在院(系):数学与信息技术学院班级:学号:姓名:1.实验目的(1)理解SQL Server 2005常用数据类型和表结构的设计方法。

理解主键、外键含义,掌握建立各表相关属性间参照关系的方法。

(2)熟练掌握使用SQL Server Management Studio图形工具创建表,删除表,修改表结构,插入及更新数据的方法。

(3)熟练掌握使用Transact-SQL语句创建表,删除表,修改表结构,插入及更新数据的方法。

2.实验要求基本实验:(1)在实验二所创建的“TM”数据库中合理设计以下各表逻辑结构:学生信息(学号,姓名,性别,籍贯,出生日期,民族,学院/系别号,班级号)课程信息(课程号,课程名称,课程所属模块,课程类别,学分,学时)学习信息(学号,课程号,考试成绩,平时成绩)院系信息(院系号,院系名称)要求确定各个字段的名称、类型、是否有默认值,是否主键等信息。

(2)依据你所设计的表结构,使用SQL Server Management Studio图形工具在“TM”数据库中创建学生信息表和课程信息表,并试验在图形界面中修改表结构,删除数据表,输入并更新数据的方法。

(3)依据你所设计表结构,使用Transact-SQL语句创建学习信息表和院系信息表,并试验使用T-SQL语句修改表结构,删除数据表,插入和更新数据的方法。

(4)找出已创建各表之间相关属性的参照关系,并在相关表中增加引用完整性约束。

(5)按要求完成实验报告。

扩展实验:(1)在“TM”数据库中补充设计以下各表结构:教师信息(教师号,姓名,性别,出生日期,学历,学位,入职时间,职称,院系号)授课信息(教师号,课程号,学期)班级信息(班级号,班级名称,专业号)专业信息(专业号,专业名称,学制,学位)图书信息(图书号,书名,作者,出版社,出版日期,册数,价格,分类)借书偏息(学号,图书号,借出时间,归还时间)奖励信息(学号,奖励类型,奖励金额)(2)设计并实现各表之间相关属性的参照关系。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三表的创建、管理和数据操纵(4学时)【实验目的】了解SQL语言的使用,进一步理解关系运算,巩固数据库的基础知识。

【实验要求】利用SQL语言进行数据库表的各种操作:1.数据库表的创建、修改和删除操作。

2.向表中进行数据的插入、删除和修改操作。

【实验内容】1. 利用数据定义语句在实验一创建的stu_DB库中建立学生管理系统的三个表:Student、Course、SC。

2.利用INSERT、UPDATE和DELETE语句对上述三张表的数据进行插入、更新和删除操作。

3.在stu_DB库中添加T eacher和TC表,对已建立的学生管理系统中的表添加充足的数据(每个表不少于20条),以便完成本实验的后继操作。

【实验步骤】一、数据定义(一)表的创建在实验一创建的数据库stu_DB中分别用企业管理器和查询分析器,按下面的表结构创建学生管理系统的表。

表3-1 Student表结构列名说明数据类型约束Sno 学号字符串,长度为8 主码Sname 姓名字符串,长度为10 非空Ssex 性别字符串,长度为2 ’男’或’女’Sage 年龄整数15~45Sdept 所在系字符串,长度为20 默认为’计算机系’表3-2 Course表结构列名说明数据类型约束o 课程号字符串,长度为8 主码ame 课程名字符串,长度为20 非空Cpno 先修课程号字符串,长度为8Ccredit 学分整数取值:1~6 Semster 学期整数取值:1~8Period 学时整数取值:≥0表3-3 SC表结构列名说明数据类型约束Sno 学号字符串,长度为8 主码,引用student的外码o 课程号字符串,长度为8 主码,引用course的外码Grade 成绩整数取值:0~1001.利用企业管理器创建表(1)打开企业管理器。

(2)选中实验一创建好的数据库stu_DB,单击数据库中的表对象,然后右击窗口右侧选择新建表,弹出如图所示窗体。

图3-1 新建表窗体(3)在这个窗体中,列名列就示表的字段名,可以在这个窗体中为字段选择数据类型和长度以及是否可以为空值。

(4)在此处可以为表选择文件组,在表中单击右键,选择属性,如果已经为数据库创建了一个次要组,可以在属性窗体的表文件组中为此表选择文件组。

应该把一些竞争使用的表放于不同的文件组中,并且让文件组属于不同磁盘,这样可以在表竞争读写时提高并发性能。

(5)创建完成后,单击磁盘图标,并为表取一个名字。

注意,应该为表取一个有意义的名字。

2.用Transact_SQL语句创建表语法为:CREATE 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的表create table student(sno CHAR(8) primary key,sname CHAR(10) not null,ssex CHAR (2) check (ssex='男'or ssex='女'),sage smallint,sdept CHAR (20) default ('计算机系'),)图3-2查询分析器窗体——创建表【例2】创建一张名为Ta1的表,此表中有3列,第一列Pid定义为主键,并且自动增长。

第二列Name默认值为Unknown,第三列定义一个约束(日期不能大于输入当天的日期),插入一条记录并进行查询,显示如下图。

CREATE TABLE ta1(pid int identity(1,1) primary key,[name] CHAR(10) default ('unknow'),birthday datetime CHECK( birthday <getdate() ))图3-3 查询分析器窗体——创建表请参考例1和例2,完成以下操作:(1)按前面所给的表结构创建表Course和SC。

(2)自行设计表的结构,用SQL语句建立第二章习题5中的4个表。

(二)表的修改注意该列有什么特殊性?1.用企业管理器修改表⑴右键点击所要修改的学生表,选择“设计表”,会弹出如图3-4所示的窗体,在这个窗体中可以更改数据表的字段。

在空白处点右键,选择“属性”,弹出另一窗体,在此可以更改约束,也可以增加约束。

图3-4 修改表窗体(2)利用Transact-SQL语句修改表●向表中添加新的字段:在学生表中添加一个“班级”字段,数据类型为字符型。

ALTER TABLE student ADD class CHAR(6)●删除表中的旧列:将学生表中的“Sdept”字段删除。

ALTER TABLE student DROP COLUMN Sdept●更改表以添加具有约束的列。

给学生表的增加“grade”字段并加上CHECK约束,让其不可以大于100。

ALTER TABLE student ADD grade int CONSTRAINT ch_grade CHECK(grade<100) EXEC sp_help ch_grade给学生表中添加“birthday”字段,并且这个日期不能在录入当天的日期之后。

ALTER TABLE student ADD birthday DATETIME NULLCONSTRAINT ch_birthday CHECK(birthday<getdate())●添加具有默认值的可为空的列:在学生表中加入“matriculationday”字段,并且这一字段的默认值为录入当天的日期。

ALTER TABLE student ADD matriculationday smalldatetime NULLCONSTRAINT adddateflt DEFAULT getdate()请参考上面所给的例子:(1)自行设计表结构修改操作(不少于8个语句),并进行实验验证。

(2)修改表student,结果如表3-4。

(3)创建表3-5、表3-6,为后续实验建立基础。

表3-4 更新后的student表结构列名说明数据类型约束Sno 学号字符串,长度为8 主码Sname 姓名字符串,长度为10 非空Ssex 性别字符串,长度为2 ’男’或’女’Sdept 所在系字符串,长度为20 默认为’计算机系’Sbirth 出生日期日期自定义sclass 班级字符串,长度为20sremark 评语变长字符串,长度为100saddress 家庭住址变长字符串,长度为40szipcode 邮编字符串,长度为6sphone 电话字符串,长度为15semail 电子邮箱变长字符串,长度为40表3-5 Teacher表结构列名说明数据类型约束tno 工号字符串,长度为8 主码tname 姓名字符串,长度为10 非空tsex 性别字符串,长度为2 ’男’或’女’tdept 所在系字符串,长度为20 默认为’计算机系’tbirth 出生日期日期自定义tposition 职称字符串,长度为12tsalary 工资整数取值:0~10000 texperience 简历变长字符串,长度为200tamount 工作量整数取值:0~1000 tphone 电话字符串,长度为15temail 电子邮箱变长字符串,长度为40taddress 家庭住址变长字符串,长度为40表3-6 TC表结构列名说明数据类型约束Tno 工号字符串,长度为8 主码,引用Teacher的外码o 课程号字符串,长度为8 主码,引用Course的外码Classroom 教室变长字符串,长度为30(三)表的删除可以在企业管理器中选择要删除的表直接删除,也可以通过Transact-SQL语句DROP 删除表的定义及表中的所有数据、索引、出发器、约束和权限规范。

如要删除ta1表,语句如下:DROP TABLE ta1请参考上面的例子完成对表Student 、Course 、SC的删除操作,它们删除的次序如何?并进行实验验证。

二、数据操纵(一)查看、重命名及删除用户定义的数据类型1.使用企业管理器创建一个名为newtype1、长度为6、可变长字符、允许为空的自定义数据类型。

进入企业管理器,进入stu_DB数据库,用鼠标右键单击“用户定义的数据类型”后选择“操作”菜单中的“新建用户定义数据类型”或点击“新建”按扭,将弹出下图所示窗体:图3-4 数据类型定义窗体输入要定义的数据名称newtype1,选择数据类型varCHAR,输入长度为6,在“允许NULL值”复选框中打个“√”,单击“确定”按钮即可。

2.使用T-SQL语句创建一个名为newtype2,数据长度为6,定长字符型,不允许为空的自定义数据类型。

USE stu_DBEXEC sp_addtype newtype2, ‘CHAR(6)’,‘not null’3.命名用户自定义的数据类型⑴使用系统存储过程sp_rename将自定义数据类型newtype1重新命名为a1。

EXEC sp_rename newtype1, a1⑵使用企业管理器再将自定义数据类型a1重新命名为newtype1。

4.删除用户自定义数据类型⑴使用系统存储过程sp_droptype来删除用户自定义的数据类型。

EXEC sp_droptype newtype1⑵使用企业管理器删除用户自定义数据类型进入企业管理器,进入stu_DB数据库,单击“用户定义的数据类型”后,右边窗口将出现所有用户定义的数据类型,再用鼠标右键单击newtype2,在弹出的快捷菜单上单击“删除”按钮即可。

注意:正在被表或其他数据库对象使用的用户定义类型能不能删除?请进行实验验证。

(二)数据的更新1. 利用企业管理器更新数据打开企业管理器,右键点击所要修改的表,选择“打开表”,单击“返回所有行”,会弹出如图3-5所示的窗体,在该窗体中可以修改表中的数据内容。

这里的修改内容是自动存储的,修改完之后,直接关闭该窗体,数据内容即修改成功。

图3-5数据修改窗体2.利用查询分析器更新数据在关系数据库中,常见的数据更新的语句有三条:INSERT、UPDA TE和DELETE⑴INSERT语句向student表中插入一行数据,具体数据如下:学号:04265005, 姓名:刘辉, 性别:男,年龄:21, 系别:计算机系USE stu_DBINSERT INTO student (Sno, Sname, Ssex, Sage, Sdept)V ALUES(‘04265005’, ‘刘辉’, ‘男’, 21, ‘计算机系’)INSERT INTO student (Sno, Sname, Ssex, Sage)V ALUES(‘04265006’, ‘李慧’, ‘女’, 21)向ta1表中插入数据如下:INSERT ta1([name],birthday) values (‘lan’,’1977-03-02’)INSERT ta1 values (‘lan’,’1977-03-02’)INSERT ta1(birthday) values (‘1977-03-02’)请根据上述例子,自行设计不同情况下的数据插入语句(不少于10个语句),并进行实验验证,验证要求如下:●不满足唯一性约束的数据的插入。

相关文档
最新文档