1 / 17

第 5 讲 数据库与事务日志、表

第 5 讲 数据库与事务日志、表. 长沙民政学院软件学院 计算机网络教研室 胡飞跃. 问题 数据库设计完成后如何建到系统中去? 当系统业务数据增长后,如何调整数据库容量呢? 数据库文件 主文件:包含数据库的启动信息、数据信息 —— 唯一的 事务日志:包含恢复数据库的所有日志信息 —— 至少一个 次要文件:主文件中不包括的所有数据信息 —— 零个、一个或多个 物理文件(操作系统中实际存在的文件)和逻辑文件(数据库中的标志). 数据库的存储结构. 数据库文件组 主文件组、次文件组、用户定义文件组 可以提高数据库的查询性能 设计文件和文件组的规则

Download Presentation

第 5 讲 数据库与事务日志、表

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第5讲 数据库与事务日志、表 长沙民政学院软件学院 计算机网络教研室 胡飞跃

  2. 问题 数据库设计完成后如何建到系统中去? 当系统业务数据增长后,如何调整数据库容量呢? • 数据库文件 • 主文件:包含数据库的启动信息、数据信息——唯一的 • 事务日志:包含恢复数据库的所有日志信息——至少一个 • 次要文件:主文件中不包括的所有数据信息——零个、一个或多个 • 物理文件(操作系统中实际存在的文件)和逻辑文件(数据库中的标志) 数据库的存储结构

  3. 数据库文件组 • 主文件组、次文件组、用户定义文件组 • 可以提高数据库的查询性能 • 设计文件和文件组的规则 • 一个文件或文件组不能用于多个数据库,只能用于一个数据库 • 一个文件只能是一个文件组的成员 • 一个数据库的数据信息和事务日志信息总是放开存放的 • 事务日志文件不能成为任何文件组的成员 数据库的存储结构(续)

  4. 关系图 • 表 • 视图 • 存储过程 • 用户 • 角色 • 规则 • 默认 • 用户定义的数据类型 • 用户定义的函数 • 全文目录 数据库对象

  5. 系统数据库 • master数据库:记录系统的所有系统级的信息 • model数据库:模板数据库 • msdb数据库:记录了有关SQL Server Agent服务的信息 • tempdb数据库:临时数据库,用于保存中间数据 • 示例数据库 • Northwind数据库 • pubs数据库 系统数据库和示例数据库

  6. 使用企业管理器 • 使用向导 • 使用SQL语句 问题:用SQL语句创建数据库sampdb,有一个数据文件20MB,一个日志文件10MB。 • 显示数据库信息 sp_helpdb 创建数据库

  7. 创建数据库 名称newxk 数据文件newxk_data.mdf,保存在c:\中,5MB-10MB,按1MB增长 事务日志newxk_log.ldf,保存在c:\中,2MB-5MB,按10%增长 • 创建名为 Archive的数据库,使用三个 10 MB 的数据文件,包含在主文件组primary中,组中第一个文件Arch1为主要数据文件,同时有两个 10 MB 的事务日志文件。 创建数据库练习

  8. 扩充数据库和事务日志的容量 • 增加次要文件和事务日志文件 【练习】为newdb数据库增加一个次要文件newdb_data2. 【练习】将数据库sampdb的数据文件大小扩充到25MB 【练习】 将sampdb的日志文件扩充到15M。 管理数据库

  9. 【练习】将sampdb数据库的数据文件压缩为3MB 【练习】增加一个日志文件 【练习】删除日志文件 • 配置数据库(sp_dboption) • 缩小数据库和数据文件 • 重命名数据库(sp_renamedb) • 删除数据库

  10. 数据库中的表的概念 • SQL Server的数据类型 • 数据类别 • 长度 • 精度 • 小数位数 • 空值:没有输入的值,未知或未定义 • 避免用空值直接参与运算 • 尽量不要允许用空值(用默认值解决没有输入的问题) 表

  11. 创建表 • 重命名表 • 删除表 • 修改表 表操作

  12. 使用企业管理器 • 使用INSERT语句 • 注意事项: • 对已经存在的值,系统不允许输入重复值 • 对某些不允许为空的字段,不允许输入空值 • 数据类型要和所对应的字段的定义相同 • values值列表的顺序要与表的字段顺序一致 向表中输入数据

  13. 使用SELECT语句 INSERT table_name SELECT column_list FROM table_list WHERE search_conditions • 注意事项: • INSERT语句中和FROM子句中使用的表可以相同也可以不同,但必须使已经存在的表 • SELECT子句得到的结果集一定要和INSERT中指定的表兼容。(列的数量和顺序要相同) 向表中输入数据(续)

  14. 使用SELECT INTO语句 SELECT select_list INTO new_table_name FROM table_list WHERE search_conditions • 注意事项: • 新表不能存在,否则会产生错误信息 • 新表中的列和行是基于查询结果集的 向表中输入数据(续)

  15. 修改表中的数据 问题:把学号为‘00000001’的学生姓名改为‘Alex’ 问题:把课程号在‘002’到‘005’之间的课程的报名人数增加1。 • 涉及多个表的修改 问题:把学号为’00000001’,选修课为’Java技术的开发应用’的自愿号(WillOrder)改为2。需要用到两个表StuCou和Course。 修改、删除表中的数据

  16. 删除表中的数据 DELETE table_name FROM … WHERE … 问题:删除学号‘00000011’的学生的选课记录。 • 涉及多个表的删除 问题:学号为’00000002’的同学取消了’中餐菜肴制作’课程的选修,请在表StuCou中把他的选课信息删除。

  17. 数据库的存储结构(物理文件和逻辑文件) • 要求熟练掌握创建、删除和修改数据库的方法 • 使用企业管理器和SQL语句创建、修改、删除表 • 使用企业管理器和SQL语句输入、修改和删除表中的数据,尤其掌握多表的删除 本节小节

More Related