创建及维护数据库与关系表_第1页
创建及维护数据库与关系表_第2页
创建及维护数据库与关系表_第3页
创建及维护数据库与关系表_第4页
创建及维护数据库与关系表_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实 验 报 告课程名称 数据库技术实践 实验项目 创建及维护数据库与关系表 实验仪器 SQL Server 2008 系 别 计算机 专 业_计算机科学与技术_班级/学号_ssssssssssssss学生姓名 _xxxxxxxxxxxxxx_ 实验日期 _xxxxxxxxxxxxxxxxx成 绩 _指导教师 _ xx _ _1内容说明在本次实验中我对 SQL Server 2008 的运行环境有了一定了解,能够用图形化方法和 SQL 语句对数据库进行创建和维护,并能运用图形化方法和适当的SQL 语句对关系表进行创建和维护。二. 熟悉 SQL Server 2008 环境0 如 果 可 能 , 请 在 机 器 上 安 装 一 个 SQL Server 2008 命 名 实 例 , 实 例 名 为SQL2008_NEW。1 将 你 的 计 算 机 上 已 安 装 SQL Server 2008 实 例 的 SQL Server 服 务 设 置 成自 动 启 动 方 式 , 将 SQL Server Agent 服 务 设 置 成 手 动 启 动 方 式 。2 将 你 的 计 算 机 上 已 安 装 SQL Server 2008 默 认 实 例 的 身 份 验 证 模 式 设 置为 混 合 模 式 。3 将 你 的 计 算 机 上 已 安 装 SQL Server 2008 命 名 实 例 注 册 到 SQL Server Management Studio 中 。4 将 命 名 实 例 设 置 成 允 许 远 程 用 户 连 接 。5 将 文 本 编 辑 器 中 的 字 体 改 为 : 宋 体 , 12 号 字 。6 连 接 到 SQL Server 2008 实 例 , 打 开 查 询 编 辑 器 , 将 其 操 作 的 数 据 库 改为 AdventureWorks。7 在 查 询 编 辑 器 中 输 入 如 下 语 句 并 执 行 :观 察 执 行 的 结 果 。( 1) 将 查 询 结 果 的 形 式 改 为 “以 文 本 格 式 显 示 结 果 ”, 再 次 执 行 上 述语 句 , 观 察 执 行 结 果 。( 2) 将 查 询 结 果 的 形 式 改 为 “将 结 果 保 存 到 文 件 ”, 再 次 执 行 上 述 语句 , 观 察 执 行 结 果 。( 3) 将 查 询 结 果 的 形 式 改 为 “以 网 格 显 示 结 果 ”, 再 次 执 行 上 述 语 句 ,观 察 执 行 结 果 。三 创建及维护数据库1 分 别 用 图 形 化 方 法 和 CREATE DATABASE语 句 创 建 符 合 如 下 条 件 的 数 据 库 :数 据 库 的 名 字 为 : students。 数 据 文 件 的 逻 辑 文 件 名 为 :students_dat, 物 理 文 件 名 students.mdf: 存 放 在 D:Test文 件 夹 下 ( 若 D:中无 此 子 文 件 夹 , 可 先 建 立 此 文 件 夹 , 然 后 再 创 建 数 据 库 。 ) , 初 始 大 小 为6MB, 自 动 增 长 , 每 次 增 加 1MB。 日 志 文 件 的 逻 辑 文 件 名 字 为 :students_log, 物 理 文 件 名 students.ldf, 也 存 放 在 D:Test文 件 夹 下 ,初 始 大 小 为 2MB, 自 动 增 长 , 每 次 增 加 10%。CREATE DATABASE students ON PRIMARY ( NAME = Nstudents_dat, FILENAME = ND:Teststudents.mdf , SIZE = 6144KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )LOG ON ( NAME = Nstudents_log, FILENAME = ND:Teststudents.ldf , SIZE = 2048KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)2 分 别 用 图 形 化 方 法 和 CREATE DATABASE语 句 创 建 符 合 如 下 条 件 的 数 据 库 :数 据 库 包 含 两 个 数 据 文 件 和 两 个 事 务 日 志 文 件 。 数 据 库 的 名 字 为 : 财 务 信 息数 据 库 ; 数 据 文 件 1的 逻 辑 文 件 名 为 : 财 务 数 据 1, 物 理 文 件 名 为 : 财 务 数据 1.mdf, 存 放 在 “D:财 务 数 据 ”目 录 下 ( 若 D:中 无 此 文 件 夹 , 可 先 建 立此 文 件 夹 , 然 后 再 创 建 数 据 库 。 ) , 初 始 大 小 为 4MB, 自 动 增 长 , 每 次 增 加1MB; 数 据 文 件 2的 逻 辑 文 件 名 为 : 财 务 数 据 2, 物 理 文 件 名 为 : 财 务 数 据2.ndf, 与 主 要 数 据 文 件 存 放 在 相 同 的 文 件 夹 下 , 初 始 大 小 为 : 3MB, 自 动增 长 , 每 次 增 加 10 。 日 志 文 件 1的 逻 辑 文 件 名 为 : 财 务 日 志 1, 物 理 文 件名 为 : 财 务 日 志 1.ldf, 存 放 在 D:财 务 日 志 文 件 夹 下 , 初 始 大 小 为 2MB, 自 动 增 长 , 每 次 增 加 10%; 日 志 文 件 2的 逻 辑 文 件 名 为 : 财 务 日 志 2, 物 理 文件 名 为 : 财 务 日 志 2.ldf, 存 放 在 D:财 务 日 志 文 件 夹 下 , 初 始 大 小 为2MB, 不 自 动 增 长 。CREATE DATABASE 财务信息数据库 ON PRIMARY ( NAME = N财务数据1, FILENAME = ND:财务数据财务数据1.mdf , SIZE = 4096KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ), ( NAME = N财务数据2, FILENAME = ND:财务数据财务数据2.ndf , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 10%)LOG ON ( NAME = N财务日志1, FILENAME = ND:财务日志财务日志1.ldf , SIZE = 2048KB , MAXSIZE = 2048GB , FILEGROWTH = 10%), ( NAME = N财务日志2, FILENAME = ND:财务日志财务日志2.ldf , SIZE = 2048KB , MAXSIZE = 2048GB , FILEGROWTH = 0)1 删 除 新 建 立 的 “财 务 信 息 数 据 库 ”, 观 察 该 数 据 库 包 含 的 文 件 是 否 一起 被 删 除 了 。2 分 别 用 图 形 化 方 法 和 T-SQL 语 句 对 第 1 题 所 建 的 “students”数 据库 空 间 进 行 如 下 扩 展 : 增 加 一 个 新 的 数 据 文 件 , 文 件 的 逻 辑 名 为“students_dat2”, 存 放 在 新 文 件 组 Group1 中 , 物 理 文 件 名students2.ndf: 存 放 在 D:Test 文 件 夹 下 , 文 件 的 初 始 大 小 为 : 2MB,不 自 动 增 长 。USE masterALTER DATABASE students ADD FILEGROUP Group1ALTER DATABASE students ADD FILE ( NAME = Nstudents_dat2, FILENAME = ND:Teststudents2.ndf , SIZE = 3072KB , FILEGROWTH = 0 ) TO FILEGROUP Group13 将 第 5 题 新 添 加 的 “students_dat2”文 件 的 初 始 大 小 改 为 6MB。4 分 别 用 图 形 化 方 法 和 T-SQL 语 句 对 扩 展 后 的 “students”数 据 库 进行 如 下 缩 小 :( 1) 将 “students”数 据 库 缩 小 到 使 数 据 库 中 的 空 白 空 间 为 50%。DBCC SHRINKDATABASE(Nstudents, 50 )( 2) 将 数 据 文 件 “students_dat”的 初 始 大 小 缩 小 为 4MB。DBCC SHRINKFILE (Nstudents_dat , 4)5 用 图 形 化 方 法 实 现 如 下 分 离 和 附 加 数 据 库 的 操 作 :首 先 分 离 新 建 立 的 students数 据 库 , 然 后 将 此 数 据 库 所 包 含 的 全 部 文件 ( 包 括 数 据 文 件 和 日 志 文 件 ) 移 动 到 你 的 计 算 机 的 D:students_db文 件夹 下 ( 首 先 建 立 好 该 文 件 夹 ) , 然 后 再 将 该 数 据 库 附 加 回 本 机 的 SQL Server实 例 中 。6 利 用 复 制 数 据 库 向 导 , 采 用 “使 用 分 离 和 附 加 方 法 ”在 本 机 上 复 制 一 个新 的 students数 据 库 , 新 数 据 库 名 为 : students_new1, 新 数 据 库 文 件 均 存放 在 DNewData文 件 夹 下 ( 请 在 复 制 数 据 库 前 先 建 立 此 文 件 夹 ) , 文 件 名 采用 默 认 设 置 。7 利 用 复 制 数 据 库 向 导 , 采 用 “使 用 SQL管 理 对 象 方 法 ”在 本 机 上 再复 制 一 个 新 的 students数 据 库 , 新 数 据 库 名 为 : students_new2, 新 数 据 库文 件 均 存 放 在 DNewData文 件 夹 下 , 文 件 名 采 用 默 认 设 置 。四. 创建及维护关系表1 在 第 3章 建 立 的 students数 据 库 中 , 创 建 满 足 如 下 要 求 的 架 构 。准 备 工 作 : 首 先 在 SSMS中 , 以 系 统 管 理 员 身 份 执 行 下 列 脚 本 , 创 建 登 录帐 户 User1和 User2, 并 让 这 两 个 登 录 帐 户 成 为 students数 据 库 中 的 合 法 用户 。CREATE LOGIN User1 WITH PASSWORD = 123456, DEFAULT_DATABASE = studentsgoCREATE LOGIN User2 WITH PASSWORD = 123456, DEFAULT_DATABASE = studentsgoUSE StudentsgoCREATE USER User1goCREATE USER User2( 1) 为 用 户 User1定 义 一 个 架 构 , 架 构 名 为 Base。( 2) 为 用 户 User2定 义 一 个 架 构 , 架 构 名 为 Inform, 并 在 该 架 构 中 定 义 一个 关 系 表 Teacher, 结 构 为 :Tno char(8) - 教 师 号Tname varchar(10) - 教 师 名( 3) 将 Inform架 构 中 的 Teacher表 传 输 到 Base架 构 中 。alter schema Base transfer Inform.Teacher( 4) 删 除 Inform架 构 。drop schema Inform2.在 Students 数 据 库 中 , 用 图 形 化 方 法 创 建 满 足 下 述 要 求 的 关 系 表 。Student 表 结 构列 名 说 明 数 据 类 型 约 束Sno 学 号 普 通 编 码 定 长 字 符 串 , 长度 为 7主 键Sname 姓 名 普 通 编 码 定 长 字 符 串 , 长度 为 10非 空Sex 性 别 普 通 编 码 定 长 字 符 串 , 长度 为 2取 值 范 围 为 :男 , 女 Birthday 出 生 日期日 期 类 型Dept 所 在 系 普 通 编 码 不 定 长 字 符 串 ,长 度 为 20Course 表 结 构列 名 说 明 数 据 类 型 约 束Cno 课 程 号 普 通 编 码 定 长 字 符 串 , 长度 为 10主 键Cname 课 程 名 普 通 编 码 不 定 长 字 符 串 ,长 度 为 20非 空Credit 学 分 微 整 型 大 于 0Semester 开 课 学期微 整 型SC 表 结 构列 名 说 明 数 据 类 型 约 束Sno 学 号 普 通 编 码 定 长 字 符 串 ,长 度 为 7 主 键 , 引 用 Student的 外 键Cno 课 程 号 普 通 编 码 定 长 字 符 串 ,长 度 为 10 主 键 , 引 用 Course的 外 键Grade 成 绩 小 整 型 取 值 范 围 : 0 1002 在 Students 数 据 库 中 , 用 T-SQL 语 句 创 建 满 足 要 求 的 表 :销 售 表 结 构列 名 数 据 类 型 约 束商 品 号 普 通 编 码 定 长 字 符 型 , 长 度为 10非 空销 售 时 间 小 日 期 时 间 型 非 空销 售 价 格 整 型 非 空销 售 数 量 小 整 型 非 空销 售 总 价 整 型 等 于 本 次 销 售 价 格 *销 售数 量其 中 ( 商 品 号 , 销 售 时 间 ) 为 主 键订 购 表 结 构列 名 数 据 类 型 约 束货 单 号 整 型 标 识 列 , 初 值 为 1, 自 动 增 长 , 每次 增 加 1, 主 键订 购 时间小 日 期 时 间 型 非 空顾 客 号 普 通 编 码 定 长 字 符型 , 长 度 为 10订 购 明 细 表 结 构列 名 数 据 类 型 约 束货 单 号 整 型 外 键 , 引 用 订 购 表 的 “货 单号 ”商 品 号 普 通 编 码 定 长 字 符 型 , 长 度为 10非 空订 购 数量整 型订 购 价格整 型其 中 ( 货 单 号 , 商 品 号 ) 为 主 键 。销 售 表 :CREATE TABLE dbo.销售 (商品号 char(10) NOT NULL,销售时间 smalldatetime NOT NULL,销售价格 int NOT NULL,销售数量 smallint NOT NULL,销售总价 int NOT NULL,CONSTRAINT PK_销售 PRIMARY KEY CLUSTERED (商品号 ASC,销售时间 ASC) ON PRIMARYALTER TABLE dbo.销售 WITH CHECK ADD CONSTRAINT CK_销售 CHECK (销售总价=销售价格 *销售数量 )GO订 购 表 :CREATE TABLE dbo.订购 (货单号 int IDENTITY(1,1) NOT NULL,订购时间 smalldatetime NOT NULL,顾客号 char(10) NULL,CONSTRAINT PK_订购 PRIMARY KEY CLUSTERED (货单号 ASC) ) ON PRIMARY订 购 明 细 表 :CREATE TABLE dbo.订购明细 (货单号 int NOT NULL,商品号 char(10) NOT NULL,订购数量 int NULL,订购价格 int NULL,CONSTRAINT PK_订购明细 PRIMARY KEY CLUSTERED (货单号 ASC,商品号 ASC) ON PRIMARYALTER TABLE dbo.订购明细 WITH CHECK ADD CONSTRAINT FK_订购明细_ 订购 FOREIGN KEY(货单号)REFERENCES dbo.订购 (货单号 )3 创 建 满 足 如 下 要 求 的 分 区 函 数 :( 1) 在 int 列 上 创 建 右 侧 分 区 函 数 , 该 分 区 函 数 将 数 据 分 为 3 个 区 : 小于 1000、 10003000 和 大 于 3000。create partition function 右侧分区 (int)as range rightfor values(1000,3000)( 2) 在 smalldatetime 列 上 创 建 左 侧 分 区 函 数 , 该 分 区 函 数 将 数 据 按 月份 分 区 , 只 针 对 2011 年 , 每 月 一 个 区 。create partition function 左侧分区 (smalldatetime)as range leftfor values(2011-02-01,2011-03-01,2011-04-01,2011-05-01,2011-06-01,2011-07-01,2011-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论