Chap02SQL Server 2005基本操作(2)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章 SQL Server 2005基本操作
2.3 使用程序代码创建数据库和表 2.4 数据库创建综合实践表
2.3.1 创建数据库
1.T-SQL语句的输入和运行环境
T-SQL语句的输入和运行环境需要建立一个数据库引擎查询文档,在所建立 的数据库引擎查询文档中输入代码。建立步骤如下: (1)在已启动的管理器界面单击常用工具栏中的“新建查询”钮,弹出连接服务 器对话框。 (2) 单击“连接”钮,建立一个数据库引擎查询文档,文档名默认为 “SQLQuery1.sql”。 (3)在“ SQLQuery1.sql”文档界面输入程序代码。
2.3 使用程序代码创建数据库和表
语法注释:
on(……) 描述数据文件 log on(……) 描述日志文件。 name 定义操作系统文件的逻辑文件名。逻辑文件名只在T-SQL语句中使 用,是实际磁盘文件名的代号。 filename 定义操作系统文件的实际名字,包括文件所在的路径。 size 定义文件的初始大小。 maxsize 定义文件能够增长到的最大长度。 filegrowth 定义的文件长度不够时,文件每次增长的速度,最少增长1MB。 增长速度也可使用百分比表示。
2.4 数据库创建综合实践
2.4.3 操作步骤 (续)
(5)按F5键或单击工具栏上的“叹号”钮,执行所输入的命令,在下
面的结果窗口会提示命令已成功执行。 (6)在【对象资源管理器】面板,展开【数据库】节点,则显示新建 立的数据库“stuDatabase”,若没有显示,将鼠标指向【对象资源管理 器】面板中的服务器选项,在快捷菜单中选择“刷新”。 (7)展开【stuDatabase】数据库,可显示该数据库中所有数据库对象。
第 9页
2.4 数据库创建综合实践
2.4.3 操作步骤(续)
(4)在SQLQuery1.sql文档界面输入代码:
create database stuDatabase on (name='stuDatabase', filename='E:\ProjectManagement\stuDatabase.mdf', size=10, maxsize=100, filegrowth=5% ) log on (name='stuDatabase_log', filename='E:\ProjectManagement\stuDatabase.ldf', size=10, maxsize=100, filegrowth=5% ) 第 10页
第 14页
create table Course( /*建立课程表Course*/ CourseNo varchar(50), CourseName varchar(50), CourseProperty varchar(50), Credit int, ClassHour int, TeacherNo varchar(50), primary key (CourseNo), foreign key(TeacherNo) references Teacher) go create table Score ( /*建立成绩表Score*/ StuNo varchar(50), CourseNo varchar(50), Score int, primary key (StuNo, CourseNo), foreign key(StuNo) references Student, foreign key(CourseNo) references Course)
提示:创建数据库之前要在E盘建立文件夹“ProjectManagement”;创建数据库 之后,打开数据库存放的物理位置“E:\ProjectManagement”,则显示数据文件 和日志文件的图标。
第 11页
2.4 数据库创建综合实践
2.4.3 操作步骤(续)
2.建立表结构
该数据库共包含4张表,即学生表Student、课程表Course、成绩表Score、教 师表Teacher。其中: (1)学生表Student用来保存学生的基本信息 (2)教师表Teacher用来保存教师信息 (3)课程表Course用来保存课程信息 (4)成绩表Score用来保存学生成绩信息 提示:表的具体结构参见教材
第 7页
2.4 数据库创建综合实践
2.4.1 实现目标
某程序开发小组拟开发一套高校学生成绩管理系统,本项目完成后台 数据库的设计。
2.4.2 设计思路
先创建数据库文件“stuDatabase”,并将其保存在 “E:\projectManagement”文件夹下;再根据系统功能来设计表结构及表
关系。
第 5页
2.3 使用程序代码创建数据库和表
语法注释:
use 库文件名 打开要创建表的数据库。 表名 要创建的表名,命名要符合SQL Server数据库对象的规则。 列名 定义表中的列名。 数据类型 定义列的数据类型,若为字符型,可以指名列宽。 [not null] 设置列值不能为空。 primary key (表名) 定义某列为主键。 foreignkey (表名) references 主键表名 定义和其它表联系的外键,其中主键 表名为与外键联系的表名。
第 15页
2.4 数据库创建综合实践
4.用代码创建数据库表(续)
(3)单击工具栏上的钮或按F5键,提示命令已成功完成。 (4)在【对象资源管理器】面板,展开【stuDatabase】数据库节 点下的【表】节点,则显示新建立的数据库表 。
5.显示数据库结构图
(1)选中【stuDatabase】数据库中的【数据库关系图】对象,按一下鼠
第 4页
2.3 使用程序代码创建数据库和表
2.3.2 创建表结构及表之间的关系
用T-SQL语句创建表结构及表关系的语法格式:
use 库文件名 create table <表名> ( 列名 数据类型 [not null], …… primary key (列名), foreignkey (列名) references 主键表名 )
第 6页
2.3 使用程序代码创建数据库和表
2.3.3 用代码在表中插入记录
用T-SQL语句插入记录的语法格式: insert into 表名 (字段名1,字段名2……) values (字段值1,字段值2……) 语法注释: 字段名1,字段名2…… 指要插入数据的字段名。 字段值1,字段值2…… 指要插入的数据值。 提示: (字段名1,字段名2……)和(字段值1, 字段值2……)在顺序、类型、个数上要一 一对应;若一条记录的所有字段都输入数据,则可省略(字段名1,字段名 2……),但字段值的输入顺序和表结构要一致;在向两个相关联的表中输入数据 时,应遵守引用完整性约束.
第 8页
2.4 数据库创建综合实践
2.4.3 操作步骤
1.创建数据库stuDatabase
(1)在E盘建立文件夹“projectManagement”. (2)单击【开始】→【所有程序】→【Microsoft SQL Server 2005】→ 【SQL Server Management Studio】,打开【连接到服务器】对话框,单击【连 接】钮,弹出【Microsoft SQL Server Management Studio】管理器窗口。 (3)单击常用工具栏中的“新建查询”钮,则建立了一个数据库引擎查询文 档,文档名默认为SQLQuery1.sql。
第 2页
2.3 使用程序代码创建数据库和表
2.3.1 创建数据库
2. 创建数据库
用T-SQL语句创建数据库的语法格式:
第 3页
create database <数据库名称> on ( name='<数据库名称>', filename=<主数据文件名>, size=<文件初始大小>, maxsize=<文件最大值>, filegrowth=<文件增长率> ) log on ( name=<日志文件名>, filename=<日志文件名>, size=<文件初始大小>, maxsize=<文件最大值>, filegrowth=<文件增长率> )
2.4 数据库创建综合实践
【stuDatabase】数据库结构图 第 17页
2.4 数据库创建综合实践
6.用代码输入表记录
(1)在学生表Student中输入记录
use stuDatabase /*打开数据库文件stuDatabase*/ insert into Student values ('07501001','张明明','男','1987-8-9', '汉族', '物电学院', '北京') insert into Student values ('07502002','王磊','男', '1988-8-19', '回族', '教育学院', '河南') insert into Student values ('07503013','池丽','女' ,'1988-12-4', '汉族', '文学院', '上海') insert into Student values ('07501011','袁晓峰','男' ,'1989-3-12', '汉族', '物电学院', '山东') insert into Student values ('07502032','沙雨','女','1989-2-1', '汉族', '教育学院', '陕西') insert into Student values ('07505001','秋水','女', '1987-6-5', '汉族', '外语学院', '北京') insert into Student values ('07501018','赵煜','男' ,'1978-08-09', '汉族', '物电学院', '山西') insert into Student values ('07502054','王维','男' ,'1978-08-09', '汉族', '教育学院', '天津') insert into Student values ('07505011','柳霞','女', '1988-5-1', '汉族', '外语学院', '北京') insert into Student values ('07503001','赵晓光','男' ,'1989-7-9','汉族','文学院','河北')
3.设计表关系
成绩表Score分别使用学生表Student的主键StudentNo、课程表Course的主键 CourseNo作为外键;课程表Course使用教师表Teacher的主键TeacherNo作为外键
第 12页
2.4 数据库创建综合实践
2.4.3 操作步骤
4.用代码创建数据库表
(1)在已启动的管理器界面单击常用工具栏中的”新建查询”钮,弹出连接 服务器对话框。 (2)单击“连接”钮,建立一个数据库引擎查询文档,文档名默认为
标右键,弹出快捷菜单。
(2)从快捷菜单中单击【新建数据库关系图】,打开【添加表】对话框。 (3)分别选中“Course”、“Score”、“Stundent”、“Teacher”表名称,
单击对话框中的【添加】钮,再单击【关闭】钮,则显示【stuDatabase】 数据库“关系图”画面。见下页
第 16页
“SQLQuery1.sql”。在“ SQLQuery1.sql”文档界面输入程序代码如下:
第 13页
use StuDatabase /*打开数据库文件StuDatabase*/ go create table Student( /*建立学生表Student*/ StuNo varchar(50), StuName varchar(50), StuSex varchar(50), StuBirthday datetime, StuNation varchar(50), StuCollege varchar(50), StuArea varchar(50), primary key (StuNo)) go create table Teacher( /*建立教师表Teacher*/ TeacherNo varchar(50), TeacherName varchar(50), TeacherTitle varchar(50), Profession varchar(50), TeacherEmail varchar(50), primary key (TeacherNo)) go
2.3 使用程序代码创建数据库和表 2.4 数据库创建综合实践表
2.3.1 创建数据库
1.T-SQL语句的输入和运行环境
T-SQL语句的输入和运行环境需要建立一个数据库引擎查询文档,在所建立 的数据库引擎查询文档中输入代码。建立步骤如下: (1)在已启动的管理器界面单击常用工具栏中的“新建查询”钮,弹出连接服务 器对话框。 (2) 单击“连接”钮,建立一个数据库引擎查询文档,文档名默认为 “SQLQuery1.sql”。 (3)在“ SQLQuery1.sql”文档界面输入程序代码。
2.3 使用程序代码创建数据库和表
语法注释:
on(……) 描述数据文件 log on(……) 描述日志文件。 name 定义操作系统文件的逻辑文件名。逻辑文件名只在T-SQL语句中使 用,是实际磁盘文件名的代号。 filename 定义操作系统文件的实际名字,包括文件所在的路径。 size 定义文件的初始大小。 maxsize 定义文件能够增长到的最大长度。 filegrowth 定义的文件长度不够时,文件每次增长的速度,最少增长1MB。 增长速度也可使用百分比表示。
2.4 数据库创建综合实践
2.4.3 操作步骤 (续)
(5)按F5键或单击工具栏上的“叹号”钮,执行所输入的命令,在下
面的结果窗口会提示命令已成功执行。 (6)在【对象资源管理器】面板,展开【数据库】节点,则显示新建 立的数据库“stuDatabase”,若没有显示,将鼠标指向【对象资源管理 器】面板中的服务器选项,在快捷菜单中选择“刷新”。 (7)展开【stuDatabase】数据库,可显示该数据库中所有数据库对象。
第 9页
2.4 数据库创建综合实践
2.4.3 操作步骤(续)
(4)在SQLQuery1.sql文档界面输入代码:
create database stuDatabase on (name='stuDatabase', filename='E:\ProjectManagement\stuDatabase.mdf', size=10, maxsize=100, filegrowth=5% ) log on (name='stuDatabase_log', filename='E:\ProjectManagement\stuDatabase.ldf', size=10, maxsize=100, filegrowth=5% ) 第 10页
第 14页
create table Course( /*建立课程表Course*/ CourseNo varchar(50), CourseName varchar(50), CourseProperty varchar(50), Credit int, ClassHour int, TeacherNo varchar(50), primary key (CourseNo), foreign key(TeacherNo) references Teacher) go create table Score ( /*建立成绩表Score*/ StuNo varchar(50), CourseNo varchar(50), Score int, primary key (StuNo, CourseNo), foreign key(StuNo) references Student, foreign key(CourseNo) references Course)
提示:创建数据库之前要在E盘建立文件夹“ProjectManagement”;创建数据库 之后,打开数据库存放的物理位置“E:\ProjectManagement”,则显示数据文件 和日志文件的图标。
第 11页
2.4 数据库创建综合实践
2.4.3 操作步骤(续)
2.建立表结构
该数据库共包含4张表,即学生表Student、课程表Course、成绩表Score、教 师表Teacher。其中: (1)学生表Student用来保存学生的基本信息 (2)教师表Teacher用来保存教师信息 (3)课程表Course用来保存课程信息 (4)成绩表Score用来保存学生成绩信息 提示:表的具体结构参见教材
第 7页
2.4 数据库创建综合实践
2.4.1 实现目标
某程序开发小组拟开发一套高校学生成绩管理系统,本项目完成后台 数据库的设计。
2.4.2 设计思路
先创建数据库文件“stuDatabase”,并将其保存在 “E:\projectManagement”文件夹下;再根据系统功能来设计表结构及表
关系。
第 5页
2.3 使用程序代码创建数据库和表
语法注释:
use 库文件名 打开要创建表的数据库。 表名 要创建的表名,命名要符合SQL Server数据库对象的规则。 列名 定义表中的列名。 数据类型 定义列的数据类型,若为字符型,可以指名列宽。 [not null] 设置列值不能为空。 primary key (表名) 定义某列为主键。 foreignkey (表名) references 主键表名 定义和其它表联系的外键,其中主键 表名为与外键联系的表名。
第 15页
2.4 数据库创建综合实践
4.用代码创建数据库表(续)
(3)单击工具栏上的钮或按F5键,提示命令已成功完成。 (4)在【对象资源管理器】面板,展开【stuDatabase】数据库节 点下的【表】节点,则显示新建立的数据库表 。
5.显示数据库结构图
(1)选中【stuDatabase】数据库中的【数据库关系图】对象,按一下鼠
第 4页
2.3 使用程序代码创建数据库和表
2.3.2 创建表结构及表之间的关系
用T-SQL语句创建表结构及表关系的语法格式:
use 库文件名 create table <表名> ( 列名 数据类型 [not null], …… primary key (列名), foreignkey (列名) references 主键表名 )
第 6页
2.3 使用程序代码创建数据库和表
2.3.3 用代码在表中插入记录
用T-SQL语句插入记录的语法格式: insert into 表名 (字段名1,字段名2……) values (字段值1,字段值2……) 语法注释: 字段名1,字段名2…… 指要插入数据的字段名。 字段值1,字段值2…… 指要插入的数据值。 提示: (字段名1,字段名2……)和(字段值1, 字段值2……)在顺序、类型、个数上要一 一对应;若一条记录的所有字段都输入数据,则可省略(字段名1,字段名 2……),但字段值的输入顺序和表结构要一致;在向两个相关联的表中输入数据 时,应遵守引用完整性约束.
第 8页
2.4 数据库创建综合实践
2.4.3 操作步骤
1.创建数据库stuDatabase
(1)在E盘建立文件夹“projectManagement”. (2)单击【开始】→【所有程序】→【Microsoft SQL Server 2005】→ 【SQL Server Management Studio】,打开【连接到服务器】对话框,单击【连 接】钮,弹出【Microsoft SQL Server Management Studio】管理器窗口。 (3)单击常用工具栏中的“新建查询”钮,则建立了一个数据库引擎查询文 档,文档名默认为SQLQuery1.sql。
第 2页
2.3 使用程序代码创建数据库和表
2.3.1 创建数据库
2. 创建数据库
用T-SQL语句创建数据库的语法格式:
第 3页
create database <数据库名称> on ( name='<数据库名称>', filename=<主数据文件名>, size=<文件初始大小>, maxsize=<文件最大值>, filegrowth=<文件增长率> ) log on ( name=<日志文件名>, filename=<日志文件名>, size=<文件初始大小>, maxsize=<文件最大值>, filegrowth=<文件增长率> )
2.4 数据库创建综合实践
【stuDatabase】数据库结构图 第 17页
2.4 数据库创建综合实践
6.用代码输入表记录
(1)在学生表Student中输入记录
use stuDatabase /*打开数据库文件stuDatabase*/ insert into Student values ('07501001','张明明','男','1987-8-9', '汉族', '物电学院', '北京') insert into Student values ('07502002','王磊','男', '1988-8-19', '回族', '教育学院', '河南') insert into Student values ('07503013','池丽','女' ,'1988-12-4', '汉族', '文学院', '上海') insert into Student values ('07501011','袁晓峰','男' ,'1989-3-12', '汉族', '物电学院', '山东') insert into Student values ('07502032','沙雨','女','1989-2-1', '汉族', '教育学院', '陕西') insert into Student values ('07505001','秋水','女', '1987-6-5', '汉族', '外语学院', '北京') insert into Student values ('07501018','赵煜','男' ,'1978-08-09', '汉族', '物电学院', '山西') insert into Student values ('07502054','王维','男' ,'1978-08-09', '汉族', '教育学院', '天津') insert into Student values ('07505011','柳霞','女', '1988-5-1', '汉族', '外语学院', '北京') insert into Student values ('07503001','赵晓光','男' ,'1989-7-9','汉族','文学院','河北')
3.设计表关系
成绩表Score分别使用学生表Student的主键StudentNo、课程表Course的主键 CourseNo作为外键;课程表Course使用教师表Teacher的主键TeacherNo作为外键
第 12页
2.4 数据库创建综合实践
2.4.3 操作步骤
4.用代码创建数据库表
(1)在已启动的管理器界面单击常用工具栏中的”新建查询”钮,弹出连接 服务器对话框。 (2)单击“连接”钮,建立一个数据库引擎查询文档,文档名默认为
标右键,弹出快捷菜单。
(2)从快捷菜单中单击【新建数据库关系图】,打开【添加表】对话框。 (3)分别选中“Course”、“Score”、“Stundent”、“Teacher”表名称,
单击对话框中的【添加】钮,再单击【关闭】钮,则显示【stuDatabase】 数据库“关系图”画面。见下页
第 16页
“SQLQuery1.sql”。在“ SQLQuery1.sql”文档界面输入程序代码如下:
第 13页
use StuDatabase /*打开数据库文件StuDatabase*/ go create table Student( /*建立学生表Student*/ StuNo varchar(50), StuName varchar(50), StuSex varchar(50), StuBirthday datetime, StuNation varchar(50), StuCollege varchar(50), StuArea varchar(50), primary key (StuNo)) go create table Teacher( /*建立教师表Teacher*/ TeacherNo varchar(50), TeacherName varchar(50), TeacherTitle varchar(50), Profession varchar(50), TeacherEmail varchar(50), primary key (TeacherNo)) go