机房重构——数据库
2015-11-08 21:02
281 查看
耿建玲视频看完后,就陆续开始敲学生,敲机房,虽说是学过数据库了,但是只是大体了解,具体应用还是不熟悉,于是用的都是给的数据库,在敲机房的过程中,用了很多SQL语句,自考也学了数据库,更深入的学习了数据库的知识,所以,第二次敲机房,再不亲自创建一个数据库都说不过去了,那具体的过程是怎样的呢?
1.找出实体及实体之间的联系,画ER图。
实体不是唯一的,他们之间的关系也只是个人理解,只要能说服自己,合理即可。
2.根据ER图导出关系模式。
<span style="font-family:KaiTi_GB2312;font-size:18px;">student(studentNo,studentName,sex,department,grade,class,explain)
card(cardNo,cash,studentNo,userID,status,Ischeck,date,time,type)
manager(userID,PWD,userName,level,Head)
Recharge(serial,cardNo,addMoney,date,time,userID,status)
CancelCard(cardNo,cancelCash,date,time,userID,status)
BasicData(Rate,tmpRate,unitTime,leastTime,prepareTime,limitCash,head,date,time)
WorkLog(serial,userID,level,loginDate,loginTime,logoutDate,logoutTime,computer)
OnlineLog(serial,cardNo,studentNo,onDate,onTime,offDate,offTime,consumeTime,consume,cash,status,computer)
CheckOut(RemainCash,RechargeCash,ConsumeCash,CancelCash,AllCash,date,time)</span>
3.根据ER图和关系模式在SQL Server中用SQL语句创建数据库。
<span style="font-family:KaiTi_GB2312;font-size:18px;">use master '设置当前数据库为master,以便访问sysdatabases表,因为master数据库中的sysdatabases存放了所有数据库清单
go '判断当前数据库系统中是否存在自己要新建的数据库,如果是就要删除
if exists(select * from sysdatabases where name=’myCharge’)
drop database myCharge
go
create database mySQL
on primary
(
name='myCharge_data', '数据库的逻辑名称
filename='D:\myCharge_data.mdf', '物理文件名
size=5mb, '初始大小
maxsize=100mb, '最大值
filegrowth=15% '文件的增长速度
)
log on
(
name='myCharge_log', '数据库的逻辑名称
filename='D:\myCharge_log.ldf', '物理文件名
size=2mb, '初始大小
maxsize=10mb '文件的增长速度
)</span>
4.通过SQL语句新建表。
以创建manager表为例
<span style="font-family:KaiTi_GB2312;font-size:18px;">use myCharge
go
if exists (select * from sysobjects where name ='manager')
drop table manager
create table manager '创建manager表
(
userID int primary key, '添加userID字段,并设为主键
PWD char(10) not null,
userName char(10) not null,
level char(10) not null,
head char(10) not null,
)</span>
这样基本的数据库就算建好了,但是在使用的过程中,一定还有需要修改的地方,还有关于存储过程和触发器的东西,等具体用到了再来补充。
1.找出实体及实体之间的联系,画ER图。
实体不是唯一的,他们之间的关系也只是个人理解,只要能说服自己,合理即可。
2.根据ER图导出关系模式。
<span style="font-family:KaiTi_GB2312;font-size:18px;">student(studentNo,studentName,sex,department,grade,class,explain)
card(cardNo,cash,studentNo,userID,status,Ischeck,date,time,type)
manager(userID,PWD,userName,level,Head)
Recharge(serial,cardNo,addMoney,date,time,userID,status)
CancelCard(cardNo,cancelCash,date,time,userID,status)
BasicData(Rate,tmpRate,unitTime,leastTime,prepareTime,limitCash,head,date,time)
WorkLog(serial,userID,level,loginDate,loginTime,logoutDate,logoutTime,computer)
OnlineLog(serial,cardNo,studentNo,onDate,onTime,offDate,offTime,consumeTime,consume,cash,status,computer)
CheckOut(RemainCash,RechargeCash,ConsumeCash,CancelCash,AllCash,date,time)</span>
3.根据ER图和关系模式在SQL Server中用SQL语句创建数据库。
<span style="font-family:KaiTi_GB2312;font-size:18px;">use master '设置当前数据库为master,以便访问sysdatabases表,因为master数据库中的sysdatabases存放了所有数据库清单
go '判断当前数据库系统中是否存在自己要新建的数据库,如果是就要删除
if exists(select * from sysdatabases where name=’myCharge’)
drop database myCharge
go
create database mySQL
on primary
(
name='myCharge_data', '数据库的逻辑名称
filename='D:\myCharge_data.mdf', '物理文件名
size=5mb, '初始大小
maxsize=100mb, '最大值
filegrowth=15% '文件的增长速度
)
log on
(
name='myCharge_log', '数据库的逻辑名称
filename='D:\myCharge_log.ldf', '物理文件名
size=2mb, '初始大小
maxsize=10mb '文件的增长速度
)</span>
4.通过SQL语句新建表。
以创建manager表为例
<span style="font-family:KaiTi_GB2312;font-size:18px;">use myCharge
go
if exists (select * from sysobjects where name ='manager')
drop table manager
create table manager '创建manager表
(
userID int primary key, '添加userID字段,并设为主键
PWD char(10) not null,
userName char(10) not null,
level char(10) not null,
head char(10) not null,
)</span>
这样基本的数据库就算建好了,但是在使用的过程中,一定还有需要修改的地方,还有关于存储过程和触发器的东西,等具体用到了再来补充。
相关文章推荐
- mysql 必知必会 笔记
- (转)mongodb 解决 couldn't connect to server 127.0.0.1:27017 src/mongo/shell/mongo.js:91 错误
- MySQL学习笔记(7)之字符集和校对规则
- MySQL存储引擎
- MySQL学习笔记(16)之存储过程
- MySQL学习笔记(15)之索引
- MySQL学习笔记(14)之事务
- MySQL学习笔记(13)之储存引擎
- MySQL学习笔记(12)之触发器(trigger)
- MySQL学习笔记(11)之视图(view)
- MySQL学习笔记(10)之select查询语句
- MySQL学习笔记(9)之外键约束
- MySQL学习笔记(8)之实体间的联系
- MySQL学习笔记(6)之设计范式
- MySQL学习(索引、引擎、优化)
- 在Win7 64位上安装mySQL5.1和Navicat10.0
- mysql的主从,主主,半同步
- SQLite学习手册(内置函数)
- MySQL学习笔记(5)之数据定义类型
- 数据库管理