已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网络数据库技术与应用 课件 第2章 第2章SQLServe数据库管理 2 1SQLServe数据库2 2建立与修改数据库2 3删除数据库2 4数据库的导入与导出2 5实例教学 库的建立与维护2 6小结 2 1SQLServe数据库 MicrosoftSQlServer是关系型数据库管理系统 在关系数据库中 数据库是以关系的方式组织数据的 关系也就是表 一个数据库可由若干个表组成 通过一个或多个表中的特定 关系 相关的数据被有机地连接起来 用户对数据库的操作实际上就是对表的操作 如果使用SQLServer 就可以在单一的数据库文件中组织 管理所有的信息 在这个文件中 用户可以将自己的数据分别保存在各自独立的存储单元中 这些相对独立的存储单元就是表 可以使用联机窗体来查看 添加并更新表中的数据 使用查询来查找并检索所需的数据 也可以使用报表以特定的版面布置来分析及打印数据 数据只需存储一次 就可以在不同的地方查看 按从大到小的层次 用于SQLServer数据库系统的信息集合分别是 数据库 表 记录 字段和值 无论在什么情况下 合理的设计都是新建一个能够有效 准确 及时地完成所需功能数据库的基础 设计数据库时有许多因素都应考虑 用户要着重考虑以下4方面的要求 1 用户需求 从现实世界提取和抽象用户的需求信息 2 概念设计 集成来自不同用户对现实世界的描述和信息的需求 形成全局概念模式 通常用E R图表示 3 逻辑设计 根据不同的DBMS的特点 把关系数据库系统从概念模式转化成关系表 并进一步变成规范形式 4 物理设计 为了保证数据库的性能 对库的设计进行优化 这主要依靠DBMS所提供的手段进行优化构造 除此之外 在设计数据库时 还应考虑下列几个问题 1 主键与外键关系型数据库中的一个表是由行和列组成的 关系模型要求数据库表中的每行记录都必须是惟一的 不允许出现完全相同的记录 在设计数据库表时 可以通过定义主键 PrimaryKey 来保证记录 实体 的惟一性 一个表的主键由一个或多个字段组成 其值具有惟一性 而且不允许取空值 NULL 主键的作用是惟一地标识表中的每一条记录 为了惟一标识实体的每一个实例 每个数据库表都应当有一个主键 而且只能有一个主键 一个关系型数据库可能包含多个表 可以通过外键 ForeignKey 使这些表之间关联起来 如果在表A中有一个字段对应于表B中的主键 则该字段称为表A的外键 虽然该字段出现在表A中 但由它所标识的主体的详细信息却存储在表B中 对于表A来说这些信息就是存储在表的外部 因而称之为外键 例如 在 订单表 中有两个外键 一个是 产品编号 其详细信息存储在 产品信息表 中 另一个是 客户编号 其详细信息存储在 客户信息表 中 2 表间联系 1 一对一关联 2 一对多关联 3 多对多关联 2 1 1数据库中的对象 在SQLServer中 一个数据库可以包含以下这些数据库对象 1 Table 表 即二维表 用来存放数据 2 View 视图 实质上它是一张虚拟的表 用来存储在数据库中预先定义好的查询 3 Index 索引 建立索引是为了提高检索表中数据的速度 但它要占用一定的物理空间 4 StoredProcedure 存储过程 也可称为函数或程序 它是存储在数据库中的一 组相关的SQL语句 经过预编译后 随时可供用户调用执行 5 Tiggers 触发器 是数据库中一个已经编译好的SQL过程 用来执行以数据库中其他动作的发生为前提的动作 通常用在UPDATE DELETE INSERT等操作之前以完成数据的完整性检查 2 1 2SQLServe数据库类型 SQLServer的数据库大致可以分为两类 系统数据库和用户数据库 系统数据库有以下4个 1 Master数据库 是SQLServer中的主控数据库 2 Model数据库 这是一个模板数据库 3 Msdb数据库 用于SQLServer代理服务 即进行警报和任务调度以及为记录操作提供存储空间 4 Tempdb 临时数据库 临时数据库的信息在SQLServer重新启动时会被清除掉 除此之外 系统特别提供了两个示范数据库 即Pubs和Northwind数据库 而用户数据库则是用户自己创建和数据库 可根据不同的需要由用户自行建立 2 1 3文件和文件组 1 文件SQLServer中重要的系统文件有以下3个 1 Primaryfile 主文件 用来存放数据和数据库的初始化信息 是每个数据库都必不可少的一个文件 其扩展名为 mdf 2 Secondaryfile 辅助文件 用来存放主文件中容纳不下的数据 对于一些较小的数据库 主文件有能力存贮所有的数据 就可以不使用辅助文件 而在大型的数据库中 辅助文件是很有用的 因为把数据分散到不同的计算机上存储 需要借助辅助文件来完成数据的组织和管理 辅助文件的扩展名为 ndf 3 TransactionLog 事务日志文件 与数据库恢复有关的所有日志信息均存放在这个文件中 SQLServer采用先写日志 Write aheadlog 和自动恢复来维护事务级的数据完整性 在出错和意外关机的情况下可以使用日志文件来实现数据库的完整性和一致性 其扩展名为 ldf SQLServer中的数据库要求必须有且只能有一个主文件和多个日志文件 2 文件组文件组用来对文件进行分组管理 各种不同类型的文件被分别归入不同的文件组合 文件的查找 修改都变得非常方便 一个文件不能同属于多个文件组 即一个文件只能惟一地属于一个文件组 一个文件或文件组也不能被多个数据库共享 2 1 4日志数据库由数据和日志两部分组成 数据记录的是客户信息 日志中记录的是用户操作信息 因为数据库安全性的需要 为了在数据库遭到破坏 甚至崩溃时能够最大限度地恢复数据库 SQLServer把用户的每一步操作都记录下来 写到日志文件中 一旦需要恢复数据库 用户可以由日志文件来实现 返回 2 2建立与修改数据库 2 2 1用SQL EM建立数据库2 2 2用T SQL建立数据库2 2 3修改数据库结构返回 2 2 1用SQL EM建立数据库 建立一个数据库的操作过程如下 此时 在企业管理器可以看到 产品信息数据库 数据库已经被建立 单击 产品信息数据库 节点 从 查看 菜单中选择 大图标 命令 就可看到该数据库中包含10个数据库对象 它们是 关系图 表 视图 存储过程 用户 角色 规则 默认 用户自定义类型以及全文目录 返回 2 2 2用T SQL建立数据库 CREATEDATABASE语句的语法格式如下 CREATEDATABASEdatabase name on PRIMARY NAME logical os SIZE size MAXSIZE max size UNLIMITED growth increment n LOGON NAME logical os SIZE size MAXSIZE max size UNLIMITED growth increment n 例2 1创建一个数据库 名称为 产品信息数据库 包含一个数据文件和一个事务日志文件 数据文件为主文件 其逻辑文件名为 产品信息库 物理文件名为 产品信息数据库 mdf 存放在D MYDATA文件中 初始容量为10MB 最大容量为50MB 自动增长时的递增量为10 事务日志文件的逻辑文件名为 产品信息日志 物理文件名为 产品信息数据库 ldf 存放在D MYDATA文件中 初始容量为5MB 最大容量为25MB 自动增长时的递增量为20 在查询分析器中输入以下的SQL语句 CREATEDATABASE产品信息数据库ONPRIMARY NAME 产品信息库 D MYDATA 产品信息数据库 mdf SIZE 10 MAXSIZE 50 LOGON NAME 产品信息日志 D MYDATA 产品信息日志 ldf SIZE 5 MAXSIZE 25 输完语句后 按F5键执行SQL 结果如图2 6所示 2 2 3修改数据库结构 建立一个数据库之后 还可以根据需要对该数据库的结构进行修改 例如增加或删除数据文件或文件组 更改文件或文件组的属性等 修改数据库结构有两种方法 一种方法是在企业管理器中使用数据库属性对话框进行修改 另一种方法是通过在查询分析器中执行ALTERDATABASE命令进行修改 在企业管理器中修改数据库结构 操作步骤如下 1 启动企业管理器 在左边的 树 形窗格中单击 数据库 节点 使SQLServer所管理的所有数据库显示在右边的内容窗格中 2 在内容窗格中双击待修改的数据库的图标 调出 数据库属性 对话框 如图2 7所示 3 选择 数据文件 选项卡 可以进行如下操作 设置数据库的增长方式 包括是否自动增长 每次递增多少 设置数据库的最大容量 是无限增长还是受限于某个最大值 增加新的数据文件 在原数据文件下方的一行中分别输入新数据文件的逻辑文件名 实际文件名和存放路径以及所占存储空间的大小 扩大数据库的容量 单击 分配的空间 框 并在此输入一个比原来大的数字 4 在数据库属性对话框中 选择 事务日志 选项卡 对事务日志文件进行修改 5 在数据库属性对话框中选择 选项 选项卡 可以对一些常用的数据库选项进行设置 6 单击 确定 按钮 关闭对话框就完成了对库文件的修改 注意 在数据库属性对话框中可以重新设置数据库文件的容量 但在这里只能扩大而不能缩小 若要通过删除未用空间来缩小数据库文件的容量 可以使用 所有任务 收缩数据库 命令完成 返回 2 3删除数据库 删除一个数据库 也就删除了该数据库中的所有对象 从而释放该数据库所占用的磁盘空间 删除库有两种方法 一种方法是使用企业管理器 另一种方法是使用DROPDATABASE命令 下面分别介绍这两种方法 2 3 1使用SQL EM删除 在企业管理器中删除数据库的操作过程如下 1 启动企业管理器 展开 数据库 节点 2 右击要删除的数据库 从弹出的快捷菜单中选择 删除 命令 3 在对话框中单击 是 按钮 确认从服务器中删除所选数据库 2 3 2使用T SQL删除 DROPDATABASE语句的语法格式如下 DROPDATABASEDatabase name n 在执行删除操作以前 可以通过执行系统存储过程SP helpdb来查看当前有哪些数据库 在查询分析器中执行DROPDATABASE语句时 不再出现提示信息 数据库一经删除就不能再恢复 所以使用这个语句时要特别小心 不要误删有用的数据库 以防造成不应有的损失 例2 2用DROPDATABASE语句删除TEST1和TEST2两个数据库 在查询分析器中输入并执行下列语句 DROPDATABASETEST1 TEST2 2 4数据库的导入与导出 SQLServer提供了数据导入与导出工具 ImportandExportData 这是一个向导程序 用于在不同的SQLServer服务器之间以及在SQLServer与其他数据库管理系统或数据格式之间转换数据 利用这个向导工具 可将桌面数据库系统 如Access和VisualFoxpro等 中的数据导入SQLServer数据库 也可以将SQLServer数据库中的数据导出到其他数据库文件 还可完成其他类型的迁移或转换任务 2 4 1数据库的导出 在SQLServer的企业管理器中 用鼠标右击 数据库 节点 系统弹出如图2 11所示的快捷菜单 在快捷菜单中单击 所有任务 导入数据 或 导出数据 就可以实现数据的导入 导出操作 1 选择一个数据源 2 选择一个目标数据库 3 选择完目标数据库后 单击 下一步 按钮 选择要进行的具体操作 可以选择拷贝表 数据库的特定查询或是在数据库之间传输对象 4 单击 下一步 按钮 指定要进行拷贝的源表 在 Sourcetable 列中显示了源数据库中存在的所有数据表名称 在每个表名称前各有一个复选框 在复选框中选中要拷贝的表 也可通过左下角的 SelectAll 按钮 快速地选中所有的表 选择后 在 目的 列中显示目标表的默认表名 可以用鼠标单击该表名后 将目标文件修改成一个需要的表名 如果想在导出数据过程中对目标表做一些结构修改 可以单击目标表后的 省略号按钮 做一些修改 5 单击 下一步 要求用户进一步选择对所创建的包的保存方式 6 单击 下一步 按钮 出现 CompletingtheDTSWizard 对话框 在该对话框中 系统将前面所选择或输入的有关数据转换参数显示在 Summary 列表框中以让用户核对是否有误 如正确 则单击 完成 按钮 系统就开始按前述的设置进行数据的转换工作 至此 数据库的导出工作完成 2 4 2数据库文件的更名 在SQLServer中 不能直接改变数据库文件的名称 但可以通过变通的方法改变数据库文件的名称 1 用上节所述的导出数据库的方法将该数据库导出到以新数据库名为名字的数据库中 在图2 14中选中所有的表 完成数据库的导出后 新建立的数据库文件就是完成更名以后的数据库 若导出的也是SQLServer数据库 则可以在图2 17中选择 在SQLServer数据库之间复制对象和数据 进行数据转换 2 将源数据库删除后 就完成了数据库的更名工作 返回 2 5实例教学 库的建立与维护 例2 3创建一个名为TEST2的数据库 它有3个数据文件 其中主数据文件为100MB 最大为200MB 按20MB增长 2个辅助文件为20MB 大小不限 按10 增长 它还有2个日志文件 大小均为50MB 最大均为100MB 按10MB增长 其SQL程序如下 createdatabasetest2onprimary name test2 data1 d exam test2 data1 mdf size 100 maxsize 200 20 n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年连云港辅警招聘考试题库含答案详解(典型题)
- 2025年西安辅警协警招聘考试备考题库含答案详解(典型题)
- 2025年省直辖行政单位辅警协警招聘考试真题含答案详解(满分必刷)
- 2025综合施工合同模板
- 2025年甘孜藏族自治州辅警招聘考试真题及一套完整答案详解
- 2025年濮阳辅警协警招聘考试备考题库及答案详解(夺冠系列)
- 2025年黄石辅警招聘考试真题带答案详解(完整版)
- 2025年银川辅警招聘考试真题及答案详解(必刷)
- 2025年淮北辅警招聘考试题库附答案详解(培优a卷)
- 2025年黄山辅警招聘考试真题及答案详解1套
- 学堂在线 人工智能原理 章节测试答案
- 《失智老年人照护》课件-项目四:失智老年人康复照护
- 中国法律史-第三次平时作业-国开-参考资料
- 大学生城市地下空间工程职业生涯规划
- 2024职业性放射性疾病诊断程序和要求
- 西宁物业行业现状分析
- 胆总管结石护理教学查房
- 人工智能换脸技术的应用与伦理问题探讨培训精
- 初三英语阅读理解专项训练100(附答案)
- 犬咬伤急救常识
- 铝合金门窗计算书
评论
0/150
提交评论