




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
最新可编辑 word 文档 长沙学院 课程设计说明书 题目汽车租赁管理系统 学院计数院 专业 班级 软件工程 姓名 学号 指导教师杨刚 潘怡 起止日期 2017 5 29 2017 6 29 最新可编辑 word 文档 课程设计任务书 课程名称 课程名称 数据库系统原理课程设计 设计题目 设计题目 汽车租赁管理系统 已知技术参数和设计要求 已知技术参数和设计要求 题目 汽车租赁管理系统 1 某汽车租赁公司汽车租赁管理系统需要如下信息 工作人员信息包括 工号 姓名 性别 联系电话等 客户信息包括 身份证号 姓名 性别 所在单位 联系电话等 车辆信息包括 车牌号 品牌 颜色 座位数 日租价格 日租超公里价格 月租价格 租赁状态 购入日期等 车辆类别信息包括 分类号 库存数 其业务规则描述如下 一个工作人员可以对很多辆车辆进行管理 一辆车也可以被多个工作人员管理 一辆车 只能属于一种车辆类别 而一种车辆类别可以包含多辆车 一个客户可以租多辆不同的 车 2 系统功能的基本要求 可以实现对车辆 租赁客户的查询 可以查询汽车 客户租赁历史记录 可以按类别统 计汽车的租赁金额和剩余的库存数 可以统计某一年龄客户群体对某类汽车的租赁喜好 能模拟客户对汽车的租借 归还业务 各阶段具体要求 各阶段具体要求 1 需求分析阶段 定义数据项的含义和取值 最新可编辑 word 文档 定义目标系统的数据流 2 概念结构设计阶段 画出实体模型 E R 图 3 逻辑结构设计阶段 将实体模型转化为关系模型 给出每个关系的主关键字和函数依赖集 分析你所设计的关系数据库模式是否属于 3NF 4 物理设计阶段 确定所有字段的名称 类型 宽度 小数位数及完整性约束 确定数据库及表的名称及其组成 确定索引文件和索引关键字 5 数据库安全及维护设计阶段 设计一个适合的数据库安全策略 用户身份认证 访问权限 视图 为了实现复杂的数据完整性约束 设计适当的触发器 设计一个适合的数据库备份策略 6 实施阶段 要求所有操作必须在查询分析器中用 SQL 语句或系统存储过程完成 设计工作量 设计工作量 1 软件设计 完成问题陈述中所提到的所有需求功能 2 论文 要求撰写不少于 3000 个文字的电子文档 详细说明各阶段具体要求 工作计划 工作计划 安排两周时间进行课程设计 软件开发步骤如下 第一周完成 1 4 第二周完成 5 8 最新可编辑 word 文档 论文同步进行 1 选定题目 2 需求分析 3 概念结构设计 4 逻辑结构设计 5 物理设计 6 数据库安全及维护设计 7 数据库上机实现 8 答辩 计划时间指导老师班级 15 16 周 潘怡 杨刚15 软件 1 班 15 16 周 潘怡 杨刚15 软件 2 班 15 16 周 卓琳 田清龙15 软件 3 班 15 16 周 卓琳 田清龙15 软件 4 班 15 16 周 张肖霞 马丽15 软件 5 班 15 16 周 张肖霞 马丽15 软件 6 班 注意事项注意事项 提交电子文档提交电子文档 长沙学院课程设计任务书 每学生 1 份 长沙学院课程设计论文 每学生 1 份 长沙学院课程设计鉴定表 每学生 1 份 指导教师签名 日期 教研室主任签名 日期 院长签名 日期 最新可编辑 word 文档 长沙学院课程设计鉴定表 姓名学号专业班级 设计题目指导教师 指导教师意见 评定等级 教师签名 日期 答辩小组意见 评定等级 答辩小组长签名 日期 教研室意见 教研室主任签名 日期 学院意见 院长签名 日期 说明课程设计成绩分 优秀 良好 及格 不及格 四类 目录 一 引言一 引言 7 7 1 1编写目的 7 1 2参考资料 7 二 二 需求规约需求规约 7 7 最新可编辑 word 文档 2 1 业务描述 7 2 2 需求分析 8 三 三 数据库环境说明数据库环境说明 8 8 四 四 数据库的命名规则数据库的命名规则 8 8 3 1 数据库对象命名规则 8 3 2 数据项编码规则 9 五 逻辑设计五 逻辑设计 1010 5 1 创建与数据库相关的那部分实体关系图 ERD 表及关系图 10 5 2 创建数据库系统的关系模型 12 六 六 物理设计物理设计 1212 6 1 表汇总 12 6 2 存储过程 17 6 3 触发器 21 七 安全性设计七 安全性设计 2828 7 1 防止用户直接操作数据库的方法 28 7 2 角色与权限 28 八 数据库管理与维护说明八 数据库管理与维护说明 2929 九 附录 源代码九 附录 源代码 3030 一 引言一 引言 1 1编写目的编写目的 本文档是汽车租赁系统设计文档的组成部分 编写数据库设计文档的目 的是 明确数据库的表名 字段名等数据信息 用来指导后期的数据库脚本 的开发 本文档的读者对象是需求人员 系统设计人员 开发人员 测试人 员 1 2参考资料参考资料 资料名称作者文件编号 版 最新可编辑 word 文档 本 数据库系统 概论 王珊 萨师煊2006 年 5 月第 4 版 二 二 需求规约需求规约 2 1 业务描述业务描述 该数据库建立于 sqlserver2008r2 环境为 windows7 系统名称 汽车租赁管理系统 系统的开发者 小组成员 系统的用户 租车客户以及租赁公司的工作人员 2 1 2 数据库系统要完成的业务流程及工作内容 首先完成需求分析 根据需求关系画出 ER 图 并写出关系模式 根据 ER 图 用 SQLserver 创建与数据库相关的表 视图 存储过程以及触发器 系统的功能要求基本实现对车辆 租赁客户的查询 可以查询客户租赁 的历史记录 可以查看汽车价格 库存 可以查看汽车的租借 归还 以及 费用 2 1 3 揭示该数据库的资源需求和设计约束 2 2 需求分析需求分析 1 车辆管理 最新可编辑 word 文档 主要是表示管理员可以对租赁公司现有的汽车的具体信息进行管理 修 改汽车基本信息 包括车牌号 汽车颜色 购入日期 类别及租赁状态等 也可以添加新购进来的汽车基本信息 以便更快的投入租赁市场 方便客户 了解最新车辆信息以及做出更好的租赁选择 2 业务管理 主要提供对汽车的日常业务进行管理 如查询指定汽车的租赁状态 被租赁的车的车牌号 所 生成的订单号 所租车的种类 租车时间 归还时间及租赁金额 查询租 车客户的基本信息 以便于管理员更好的管理车辆系统 保障系统安全性 三 三 数据库环境说明数据库环境说明 数据库 实例 数据库 系统 数据库 部署环 境 数据库 设计工 具 数据库存 放位置 说明 汽车租赁 Sqlserver20 08r2 Windows7Sqlserver20 08r2 Microsoftof ficevisio200 3 E sql SQL 实例用途说明 四 四 数据库的命名规则数据库的命名规则 3 1 数据库对象命名规则数据库对象命名规则 最新可编辑 word 文档 数据库对象命名规则备注 表英文命名例如 car 汽车表 存储过程proc 功能描述字符 串 例如 proc car 汽车查 询的存储过程 触发器功能命名例如 delete car 删除 汽车 视图View 功能描述字符 串 例如 view rent 查看租 借信息表 3 2 数据项编码规则数据项编码规则 数据项命名规则数据类型长度范围备注 汽车编号所在地 字母号 数字 Varchar 类 型 10 位 租赁状态 Trueorfalse Bit 类型 订单号流水号Varchar 类 型 10 位 客户号字母 数字编号Varchar 类 型 10 位 工作人员编 号 数字Varchar 类 型 10 位 汽车类型号字母Varchar 类10 位 最新可编辑 word 文档 型 五 五 逻辑设计逻辑设计 5 1 创建与数据库相关的那部分实体关系图 ERD 表及关系图 表 customers CusNoPYVarchar 10 NOT Null CusNameVarchar 10 NOT Null CusSexVarchar 2 NOT Null CusAgeVarchar 4 NOT Null CusPhoneVarchar 10 CusCompanyVarchar 10 NOT Null CusIdentityVarchar 10 NOT Null 表 rent RecordPYVerchar 10 Notnull RentDatedateNotnull ReturnDatedateNotnull CusNoVerchar 10 Notnull CarNoVerchar 10 Notnull RecordcostVerchar 100NotNull 表 car CarNoPYVerchar 10 Notnull 最新可编辑 word 文档 CarColorVerchar 10 Notnull CarDatedateNotnull CarClassNoFYVerchar 10 Notnull CarStatebitNotnull 表 carclass CarClassNoPYVerchar 10 Notnull CarClassCnt Varchar 10 Notnull CarClassDayPriceVerchar 10 Notnull CarClassDayPriceExc eed Verchar 100Notnull CarClassMonthPriceVerchar 10 Notnull CarClassSeatVerchar 10 Notnull 表 worker WorkNoPYVerchar 10 Notnull WorkPassWordVerchar 10 Notnull WorkNameVerchar 10 Notnull WorkSexVerchar 2 Notnull WorkPhoneVerchar 10 表 manage WorkNoPYVerchar 10 Notnull CarNoPYVerchar 10 Notnull 最新可编辑 word 文档 5 2 创建数据库系统的关系模型 1 工作人员 工号 密码 姓名 性别 联系电话 2 客户信息 身份证号 密码 姓名 性别 所在单位 联系电话 3 车辆信息 车牌号 品牌 座位数 颜色 租赁状态 购入日期 分类号 4 车辆类别 分类号 库存数 日租价格 日租超公里价格 月租价格 月租 超公里价格 品牌 5 管理 工号 车牌号 备注 工号和车牌号共同作为管理表的主键 同时 也是外键 6 租赁 订单号 身份证号 车牌号 租赁日期 归还日期 租赁总金额 六 六 物理设计物理设计 6 1 表汇总表汇总 表名 功能说明 car 存储车辆信息 carclass 存储车辆类别的信息 rent 存储租赁的信息 customers 存储客户信息 worker 存储工作人员的信息 manage 存储工作人员和车辆之间的关系 最新可编辑 word 文档 表名 car 数据库用户 Car rent 主键 CarNo 索引字段 CarClassNo 序号字段名称数据类型允许为 空 Y N 唯一 Y N 区别度默认值约束条件 说 明 1CarNovarchar 10 NY 高无主键 2CarClassNovarchar 10 NN 高无外键 3CarStatebit 2 NN 低 00 租赁状态 4CardatedateNN 低无购入日期 5CarColorvarchar 10 NN 低无汽车颜色 sql 脚本 DROPTABLEIFEXISTS car CREATETABLE car CarNo varchar 10 NOTNULL CarColor varchar 10 NOTNULL CarDate dateNOTNULL CarSta bit 10 NOTNULL CarClassNo varchar 10 NOTNULL PRIMARYKEY CarNo KEY CarClassNo CarClassNo CONSTRAINT CarClassNo FOREIGNKEY CarClassNo REFERENCES carclass CarClassNo 表名 carclass 数据库用户 Car rent 最新可编辑 word 文档 主键 CarClassNo 序 号 字段名称数据类型允许为 空 Y N 唯一 Y N 区别 度 默认 值 约束条件 说明 1CarClassNovarchar 10 NY 高无主键 2CarClassCntvarchar 10 NN 低无库存数 3CarClassSeatbit 2 NN 低无座位数 4CarClassDayPrice2dateNN 低无日租价格 5CarClassDayPrice1varchar 10 NN 低无日租超公里价格 6CarClassMonthPricevarchar 10 NN 低无月租价格 7CarClassBrandvarchar 10 NN 低无车辆品牌 sql 脚本 DROPTABLEIFEXISTS carclass CREATETABLE carclass CarClassNo varchar 10 NOTNULL CarClassCnt varchar 10 NOTNULL CarClassDayPrice1 varchar 10 NOTNULL CarClassDayPrice2 varchar 10 NOTNULL CarClassMonthPrice varchar 10 NOTNULL CarClassBrand varchar 10 NOTNULL CarClassseat varchar 10 NOTNULL PRIMARYKEY CarClassNo 表名 customer 数据库用户 Car rent 主键 CusNo 序号字段名称数据类型允许为 空 Y N 唯一 Y N 区别度默认值约束条件 说 明 最新可编辑 word 文档 1CusNovarchar 10 NY 高无主键 2CusPasswordvarchar 10 NN 高无登录密码 3CusNamevarchar 10 NN 低无客户姓名 4CusSexvarchar 10 NN 低无客户性别 5CusAgevarchar 10 NN 低无客户年龄 6CusPhonevarchar 10 NN 低无客户电话 7CusCompanyvarchar 10 NN 低无公司 sql 脚本 DROPTABLEIFEXISTS customer CREATETABLE customer CusNo varchar 10 NOTNULL CusName varchar 10 NOTNULL CusSex varchar 2 NOTNULL CusAge varchar 4 NOTNULL CusPhone varchar 20 NOTNULL CusCompany varchar 20 NOTNULL CusPassword varchar 10 NOTNULL PRIMARYKEY CusNo 表名 worker 数据库用户 Car rent 主键 WorkNo 序号字段名称数据类型允许为 空 Y N 唯一 Y N 区别度默认值约束条件 说 明 1WorkNovarchar 10 NY 高无主键 2WorkPassw ord varchar 10 NN 低无密码 最新可编辑 word 文档 3WorkNamevarchar 10 NN 低无姓名 4WorkSexvarchar 10 NN 低无性别 5WorkPhonevarchar 10 NN 低无电话 sql 脚本 DROPTABLEIFEXISTS worker1 CREATETABLE worker1 WorkNo varchar 10 NOTNULLDEFAULT WorkPassword varchar 10 DEFAULTNULL WorkName varchar 10 DEFAULTNULL WorkSex varchar 10 DEFAULTNULL WorkPhone varchar 10 DEFAULTNULL PRIMARYKEY WorkNo 表名 rent 数据库用户 Car rent 主键 RecordNo 索引CarNo CusNo 序号字段名称数据类型允许为 空 Y N 唯一 Y N 区别 度 默认 值 约束条件 说明 1RecordNovarchar 10 NY 高无主键 2CarNovarchar 10 NN 高无外键 3CusNovarchar 10 NN 低无外键 4RecordCostvarchar 10 NN 低无总金额 5RecordRentDatevarchar 10 NN 低无租赁时间 6RecordReturnDat e varchar 10 NN 低无归还时间 最新可编辑 word 文档 sql 脚本 DROPTABLEIFEXISTS rent CREATETABLE rent RecordNo varchar 10 NOTNULL RecordRentDate datetimeNOTNULL RecordReturnDate datetimeNOTNULL CusNo varchar 10 NOTNULL CarNo varchar 10 NOTNULL RecordCost varchar 10 DEFAULTNULL PRIMARYKEY RecordNo KEY CusNo CusNo KEY CarNo CarNo CONSTRAINT CarNo FOREIGNKEY CarNo REFERENCES car CarNo CONSTRAINT CusNo FOREIGNKEY CusNo REFERENCES custo mer CusNo 表名 Wmanage 数据库用户 Car rent 主键CarNo WorkNo 索引 CarNo 序号字段名称数据类型允许为 空 Y N 唯一 Y N 区别度默认值约束条件 说 明 1WorkNovarchar 10 NY 高无主键 2CarNovarchar 10 NN 高无主键 最新可编辑 word 文档 sql 脚本 DROPTABLEIFEXISTS manege CREATETABLE manege WorkNo varchar 10 NOTNULLDEFAULT CarNo varchar 10 NOTNULLDEFAULT PRIMARYKEY WorkNo CarNo KEY CarNo CarNo CONSTRAINT manege ibfk 1 FOREIGNKEY CarNo REFERENCES car CarNo CONSTRAINT WorkNo FOREIGNKEY WorkNo REFERENCES worker1 WorkNo 6 2存储过程存储过程 6 2 1查询每辆车的状态和库存数查询每辆车的状态和库存数 关键代码 usecar rent go CREATEPROCEDUREproc car as selectcar CarNo car CarState carclass CarClassCnt fromcar carclass wherecar CarClassNo carclass CarClassNo 6 2 2 查询所输入客户账号的租赁历史记录查询所输入客户账号的租赁历史记录 关键代码 usecar rent go createprocedureproc customers CusNovarchar 10 as selectrent Record rent RentData rent RetunDate rent RecordCost rent CusNo car C arNo carclass CarClassBrand 最新可编辑 word 文档 fromrent car carclass where CusNo CusNoandrent CarNo car CarNoandcar CarClassNo carclass CarClassNo 执行 execproc customers A01 6 2 3 查询输入客户账号的租赁历史记录查询输入客户账号的租赁历史记录 关键代码 usecar rent go createprocedureproc car rent CarNovarchar 10 as selectrent Record rent RentData rent RetunDate rent CarNo rent CusNo rent Rec ordCost fromrent whererent CarNo CarNo 执行 execproc car rent 湘A8888 6 2 4 查询通过输入订单号查询订单信息查询通过输入订单号查询订单信息 关键代码 usecar rent go createprocedureproc record Recordvarchar 10 as selectrent Record rent RentData rent RetunDate rent CusNo rent RecordCost fromrent whererent Record Record 执行 execproc record 1 6 2 5 通过输入类别统计汽车的租赁金额和剩余的库存数通过输入类别统计汽车的租赁金额和剩余的库存数 关键代码 usecar rent go 最新可编辑 word 文档 createprocedureproc carclassno carclassnovarchar 10 as selectcarclass CarClassDayPrice1 carclass CarClassCnt fromcarclass wherecarclass CarClassNo carclassno 执行 execproc carclassno A 6 2 6 删除一辆车删除一辆车 关键代码 usecar rent go createprocedureproc delete car carnovarchar 10 as deletefromcar wherecar CarNo carno 执行 execproc delete car 湘 B8888 6 2 7 删除一条记录删除一条记录 关键代码 usecar rent go createprocedureproc delete rent recordvarchar 10 as deletefromrent whererent Record record 执行 execproc delete rent 2 最新可编辑 word 文档 6 2 8 还车 修改还车日期 默认没还车前 还车日期等于借车日还车 修改还车日期 默认没还车前 还车日期等于借车日 期期 只有当没还过车的时候才能修改还车日期 只有当没还过车的时候才能修改还车日期 关键代码 usecar rent go createprocedureproc return car recordvarchar 10 returndatedate as updaterent setRetunDate returndate where returndate rent RetunDateandDATEDIFF DAY rent RentData rent RetunDate 0 执行 execproc return car 1 2016 8 17 6 3 触发器触发器 6 3 1 输入新的车牌号及信息 此车辆所对应车辆类别的库存数自输入新的车牌号及信息 此车辆所对应车辆类别的库存数自 动增加动增加 关键代码 usecar rent go CreateTriggeradd newcar Oncar afterinsert As UPDATEcarclass SETCarClassCnt CarClassCnt 1 WHEREcarclass CarClassNoIN SELECTCarClassNofromINSERTEDi GO 最新可编辑 word 文档 6 3 2 删除车牌号及信息 此车辆所对应车辆类别的库存数自动减删除车牌号及信息 此车辆所对应车辆类别的库存数自动减 少少 关键代码 usecar rent go CreateTriggerdelete car Oncar afterdelete As UPDATEcarclass SETCarClassCnt CarClassCnt 1 WHEREcarclass CarClassNoIN SELECTCarClassNofromdeletedi GO 6 3 3 当产生一个新的订单时 订单中所预订车辆所对应车辆类别当产生一个新的订单时 订单中所预订车辆所对应车辆类别 的库存数自动减少 的库存数自动减少 借车时借车时 关键代码 usecar rent go CreateTriggerrent car Onrent afterinsert As UPDATEcarclass SETCarClassCnt CarClassCnt 1 whereCarClassNoin selectCarClassNofromcar whereCarNoin selectCarNofromrent whereCarNoin selectCarNofrominserted GO 6 3 4 修改订单还车日期时时 订单中所预订车辆所对应车辆类别修改订单还车日期时时 订单中所预订车辆所对应车辆类别 的库存数自动增加 的库存数自动增加 还车时还车时 关键代码 最新可编辑 word 文档 usecar rent go CreateTriggerreturn car Onrent afterupdate As UPDATEcarclass SETCarClassCnt CarClassCnt 1 whereCarClassNoin selectCarClassNofromcar whereCarNoin selectCarNofromdeleted Go 6 3 5 当产取消一个订单时 订单中所预订车辆所对应车辆类别的当产取消一个订单时 订单中所预订车辆所对应车辆类别的 库存数自动增加库存数自动增加 关键代码 usecar rent go CreateTriggerdelete rent car Onrent afterdelete As UPDATEcarclass SETCarClassCnt CarClassCnt 1 whereCarClassNoin selectCarClassNofromcar whereCarNoin selectCarNofromdeleted wherecar CarState false GO 6 3 6 当产生一个新的订单时 订单中所预订车辆的租赁状态由空当产生一个新的订单时 订单中所预订车辆的租赁状态由空 闲状态 闲状态 ture 变为预订状态 变为预订状态 false 借车时借车时 关键代码 usecar rent go CreateTriggerrent state car Onrent afterinsert 最新可编辑 word 文档 As updatecar setCarState false whereCarNoin selectCarNofromrent whereCarNoin selectCarNofrominserted GO 6 3 7 改订单还车日期时时 订单中所预订车辆的租赁状态由预订改订单还车日期时时 订单中所预订车辆的租赁状态由预订 状态 状态 false 变为空闲状态 变为空闲状态 ture 还车时还车时 关键代码 usecar rent go CreateTriggerreturn state car Onrent afterupdate As UPDATEcar setCarState true whereCarClassNoin selectCarClassNofromcar whereCarNoin selectCarNofromdeleted Go 6 3 8 当取消一个新的订单时 订单中所预订车辆的租赁状态由空当取消一个新的订单时 订单中所预订车辆的租赁状态由空 闲状态 闲状态 false 变为预订状态 变为预订状态 ture 关键代码 usecar rent go CreateTriggerdelete rent state car Onrent afterdelete As updatecar setCarState true whereCarNoin selectCarNofromdeleted wherecar CarState false 最新可编辑 word 文档 GO 6 3 9 修改订单还车日期时时 更新实际花费 修改订单还车日期时时 更新实际花费 还车时还车时 关键代码 usecar rent go CreateTriggerreturn car price Onrent afterupdate As declare pricevarchar 10 select price selectCarClassDayPrice1fromCarClass whereCarClassNoin selectCarClassNofromCar whereCarNoin selectinserted CarNofrominserted deleted whereinserted Record deleted Record UPDATErent SETRecordCost price DATEDIFF DAY rent RentData rent RetunDate 1 whereRecordin selectinserted Recordfrominserted deleted whereinserted Record deleted Record Go 七 七 安全性设计安全性设计 7 1 防止用户直接操作数据库的方法防止用户直接操作数据库的方法 关键代码 execsp addlogin 1 123456 car rent worker管理员 execsp grantdbaccess 1 worker execsp addlogin A01 123456 car rent customers用户 execsp grantdbaccess A01 customers 7 2 角色与权限角色与权限 关键代码 最新可编辑 word 文档 worker拥有所有权限 grantalloncartoworkerwithgrantoption grantalloncarclasstoworkerwithgrantoption grantallonrenttoworkerwithgrantoption grantallonworkertoworkerwithgrantoption grantallonmanagetoworkerwithgrantoption grantalloncustomerstoworkerwithgrantoption 用户拥有查看customer和car的权限 grantallonselect customerstocustomers grantallonselect cartocustomers 角色可以访问的表与列操作权限 Worker 可访问所有表完全控制权限 查看客户表视图查看 查看汽车表视图查看 Customers 查看租赁表视图查看 八 八 数据库管理与维护说明数据库管理与维护说明 要保证数据库的安全和可靠就需要对其日常管理进行全面的掌控和及时的维护 以此获得更加安全的数据库环境 具体的做法有以下几点 1 定期对用户和密码进行维护 前面提及的管理的安全性是十分重要的 因此对数据库的用户和密码应当进行定期的 维护和管理 借助动态化的变更来获得安全性的提高 为了保证系统的安全性 系统 管理人员应当按照系统运行的实际情况 对系统进行强制性的维护 执行一系列的安 全保证措施 其中定期修改用户密码就是一种较为有效的措施 操作是通过调用系统 过程中的 sp password 来完成的 通过这个操作对原有的老的密码进行更换 并形成 新的密码供用户使用 在完成一个 SQL Server 的安装后 就会有一个对应的管理员 用户 sa 出现 其拥有的是最高的管理权限 通常为系统的管理人员拥有 这个 sa 的 重要性前面已经提及 所以在管理中对 sa 级别的密码也应当注意定期的修改 2 授权给信息表用户 最新可编辑 word 文档 设置密码和用户验证的手段是控制用户访问数据库的合法性 而为每个数据库中的信 息表用户进行授权就是为了保证用户的合法权利 即对不同的信息表用户划定某种访 问的特权 所以给信息表用户授权是一种实时化确定访问用户权限的措施 是有效的 提高系统安全性的重要手段 同时也是系统管理员需要进行的一项日常管理工作 3 对数据库数据资料的维护 数据库随着计算机技术的发展而变得越来越庞大 同时在与网络相结合实现了网络连 接和访问的功能 数据的备份和恢复工作就成为了数据库数据资料管理的重要内容 因为数据资料是数据库的核心 对其保护和备份显然是数据库管理的核心 1 数据库备份管理 每个数据库都应当在创建后就进行卸出 从而提供一个装入度的基点 在此后就会按 照一定的时间点进程周期表卸出 除了按照计划的卸出管理之外 还应当对每次运行 没有日志的操作后进行卸出数据库的操作 这是保证数据库资料得到及时备份的重要 操作过程 也是对日常管理的要求 2 数据库事务日志的备份 在系统管理中 事务日志的备份空间要远远小于备份数据库的资源空间 因此在对其进 行备份的时候 操作频率要大于对数据库的备份 即频繁操作是其突出特征 以此便于 随时掌控访问的记录 减少丢失数据的可能性 通常都是采用 DUMP TRAN 的命令来执行 单独备份日志 3 数据库系统恢复管理 数据库在完成各项操作和功能的时候 就会涉及到数据库重装 然后在装入前完成卸出 日志 对数据库的备份和事务日志备份 就是为了防止出现意外的时候 可以完整的恢 复数据库 当出现意外发生时 已经完成操作的数据和日志都可以被恢复 只有还没有 最新可编辑 word 文档 被提交的事务才会丢失 从而将数据库恢复到没有出现问题前的状态 将数据的丢失控 制在最小的范围内 这也是日常维护工作的核心目标 4 对系统状况的监控 1 控制用户 1 利用系统过程 sp who 说明 此过程是显示当前系统中所有的注册用户的进程信息 且为实时化 显示的为进 程号 当前状态 注册用户 机主名称 占有资源 数据库名称 执行指令等 如果监 控是发现进程总数接近系统最大允许数量 系统则会对一些无关进程进行关闭 保证系 统正常 2 控制占用空间 九 实验总结 本次实验熟练掌握了对 T sql 语言和数据库的掌握 进一步了解了存储过程 触发器 视图的语法结构以及表的完整性约束 列完整性约束 十 附录 源代码 9 1 建库建表建库建表 CREATEDATABASEcar rent CREATEDATABASEcar rent ONPRIMARY NAME car data FILENAME f sql car rent mdf SIZE 20MB MAXSIZE 30MB FILEGROWTH 1MB 最新可编辑 word 文档 LOGON NAME car log FILENAME f sql car rent ldf SIZE 10MB MAXSIZE 15MB FILEGROWTH 1MB createtableworker usecar rent createtableworker WorkNovarchar 10 notnullCONSTRAINTWorkNOPRIMARYKEY WorkPassWordvarchar 10 null WorkNamevarchar 10 null WorkSexvarchar 10 null WorkPhonevarchar 10 null dataofworker INSERTINTOworker INSERTINTOworker createtablemanage usecar rent createtablemanage WorkNovarchar 10 notnull CONSTRAINTWorkNo FKFOREIGNKEYREFERENCESworker WorkNo CarNovarchar 10 notnull CONSTRAINTCarNo FKFOREIGNKEYREFERENCEScar CarNo PRIMARYKEY WorkNo CarNo dataofmanage createtablecar usecar rent 最新可编辑 word 文档 createtablecar CarNovarchar 10 notnullCONSTRAINTCarNoPRIMARYKEY CarColorvarchar 10 null CarDatedatenull CarClassNovarchar 10 notnull CONSTRAINTCarClassNo FKFOREIGNKEYREFERENCEScarclass carclassno CarStatebitnull dataofcar INSERTINTOcarvalues 湘A8888 黑色 2017 05 31 A true INSERTINTOcarvalues 湘A6666 白色 2017 06 01 A true INSERTINTOcarvalues 湘B8888 蓝色 2017 05 31 B true createtablecarclass usecar rent createtablecarclass CarClassNovarchar 10 notnullCONSTRAINTCarClassNOPRIMARYKEY CarClassCntintNOTNULL CarClassDayPrice1varchar 10 NOTNULL CarClassDayPrice2varchar 10 NOTNULL CarClassMonthPricevarchar 10 NOTNULL CarClassBrandvarchar 10 NULL CarClassseatvarchar 10 NULL dataofcarclass INSERTINTOcarclassvalues A 0 200 20 1000 大众库 4 INSERTINTOcarclassvalues B 0 300 20 2000 奥迪库 4 createtablerent usecar rent createtablerent Recordvarchar 10 notnullCONSTRAINTRecordPRIMARYKEY RentDatadatenotnull RetunDatedatenotnull CusNovarchar 10 notnull CONSTRAINTCusNo FKFOREIGNKEYREFERENCEScustomers CusNo 最新可编辑 word 文档 CarNovarchar 10 notnull CONSTRAINTCarNo rent FKFOREIGNKEYREFERENCEScar CarNo RecordCostvarchar 10 notnull dataofrent usecar rent INSERTINTOrentvalues 1 2016 06 17 2016 06 17 A01 湘A8888 0000 INSERTINTOrentvalues 2 2016 05 17 2016 05 17 A01 湘A6666 0000 INSERTINTOrentvalues 3 2016 07 18 2016 07 18 A02 湘A8888 0000 createtablecustomers usecar rent createtablecustomers CusNovarchar 10 notnullCONSTRAINTCusNOPRIMARYKEY CusNamevarchar 10 notnull CusSexvarchar 2 notnull CusAgevarchar 4 notnull CusPhonevarchar 20 notnull CusCompanyvarchar 20 notnull CusPasswordvarchar 10 notnull dataofcustomers usecar rent INSERTINTOcustomersvalues A01 马云 男 40 1888888 阿里巴巴 123456 INSERTINTOcustomersvalues A02 小明 男 50 122222 汽修厂 222222 9 2 存储过程存储过程 系统功能的基本要求 可以实现对车辆 租赁客户的查询 可以查询汽车 客户租赁历史记录 可以按类别统计汽车的租赁金额和剩余的库存数 模拟客户对汽车的租借 归还业务 存储过程 最新可编辑 word 文档 Proc 1 查询每辆车的状态和库存数 usecar rent go CREATEPROCEDUREproc car as selectcar CarNo car CarState carclass CarClassCnt fromcar carclass wherecar CarClassNo carclass CarClassNo execproc car dropprocedureproc car Proc 2 查询所输入客户账号的租赁历史记录 usecar rent go createprocedureproc customers CusNovarchar 10 as selectrent Record rent RentData rent RetunDate rent RecordCost rent CusNo car C arNo carclass CarClassBrand fromrent car carclass where CusNo CusNoandrent CarNo car CarNoandcar CarClassNo carclass CarClassNo execproc customers A01 dropprocedureproc customers Proc 3 查询所输入车牌号的被租赁历史记录 usecar rent go createprocedureproc car rent CarNovarchar 10 as selectrent Record rent RentData rent RetunDate rent CarNo rent CusNo rent Rec ordCost fromrent wh
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论