文档章节

创建BankDB银行数据库,创建表,插…

杨润康Bla
 杨润康Bla
发布于 2016/05/18 18:03
字数 855
阅读 19
收藏 0
点赞 2
评论 0
use master
if exists (select * from sysdatabases where name='BankDB')
drop database BankDB
go
create database BankDB
on primary
(
name='BankDB_data',
filename='E:\BankDB_data.mdf',
size=20MB,
maxsize=550MB,
filegrowth=15MB
)
log on 
(
name='BankDB_log',
filename='E:\BankDB_log.ldf',
size=20MB,
maxsize=550MB,
filegrowth=15MB
)
go
use BankDB
if exists (select * from sysobjects where name='UserInfo')
drop table UserInfo
go
create table UserInfo
(
customerID int identity(1,1) primary key,--客户编号
customerName varchar(5) not null,--客户姓名
PID varchar(20) not null,--身份证号
telephone varchar(20) not null, --联系电话
address varchar(100) --地址 
)
go
alter table UserInfo
add constraint ck_PIDLength check(len(PID)=18 or len(PID)=15),
constraint uq_PID unique(PID),
constraint ck_telephone check(len(telephone)=11 or telephone like '[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9]' or telephone like '[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
go
if exists (select * from sysobjects where name='Deposit')
drop table Deposit
go
create table Deposit
(
savingID int identity(1,1) primary key,--存款类型编号
savingName varchar(20) not null,--存款类型名称
descrip   varchar(50)--描述
)
go
if exists (select * from sysobjects where name='CardInfo')
drop table CardInfo
go
create table CardInfo
(
cardID char(20) primary key,--卡号
curID varchar(20) not null,--货币种类 --无外键
savingID int not null,--存款类型
opendate datetime not null,--开户日期
openMoney decimal not null,--开户金额
balance decimal not null,--余额
password varchar(20) not null,--密码
isReportLoss bit not null,--是否挂失
customerID int not null--客户编号
)
go
alter table CardInfo
add constraint ck_cardID check(cardID like '1010 3576 [0-9][0-9][0-9][0-9] [0-9][0-9][0-9][0-9]'),
constraint df_curID default('RMB') for curID,
constraint fk_savingID foreign key(savingID) references Deposit(savingID),
constraint df_openDate default(getdate()) for opendate,
constraint ck_openMoney check(openMoney>=1),
constraint ck_balance check(balance>=1),
constraint ck_password check(len(password)=6),
constraint df_password default('888888') for password,
constraint df_isReportLoss default('0') for isReportLoss,
    constraint fk_customerID foreign key(customerID) references UserInfo(customerID)
go
if exists (select * from sysobjects where name='TradeInfo')
drop table TradeInfo
go
create table TradeInfo
(
transDate datetime not null,--交易日期
cardID char(20) not null,--卡号
transType int not null,--交易类型
transMoney decimal not null,--交易金额
remark varchar(50)--备注
)
go
alter table TradeInfo
add constraint df_transDate default(getdate()) for transDate,
constraint fk_cardID foreign key(cardID) references CardInfo(cardID),
constraint ck_transType check(transType in (1,0)),
constraint ck_transMoney check(transMoney>0)
go


--插入数据Deposit
INSERT INTO deposit (savingName,descrip) VALUES ('活期','按存款日结算利息')
INSERT INTO deposit (savingName,descrip) VALUES ('定期一年','存款期是1年')
INSERT INTO deposit (savingName,descrip) VALUES ('定期二年','存款期是2年')
INSERT INTO deposit (savingName,descrip) VALUES ('定期三年','存款期是3年')
INSERT INTO deposit (savingName) VALUES ('定活两便')
INSERT INTO deposit (savingName) VALUES ('通知')
INSERT INTO deposit (savingName,descrip) VALUES ('零存整取一年','存款期是1年')
INSERT INTO deposit (savingName,descrip) VALUES ('零存整取二年','存款期是2年')
INSERT INTO deposit (savingName,descrip) VALUES ('零存整取三年','存款期是3年')
INSERT INTO deposit (savingName,descrip) VALUES ('存本取息五年','按月支取利息')


---UserInfo
INSERT INTO userInfo(customerName,PID,telephone,address )
      VALUES('张三','123456789012345','010-67898978','北京海淀')

INSERT INTO userInfo(customerName,PID,telephone)
      VALUES('王五','567891234532124670','010-44443333')
     
     
INSERT INTO userInfo(customerName,PID,telephone)
      VALUES('李四','321245678912345678','0478-4444333')--号码11位,要符合约束

INSERT INTO userInfo(customerName,PID,telephone)
      VALUES('丁六','567891321242345618','0752-4334554')
     
--CardInfo
INSERT INTO cardInfo(cardID,savingID,openMoney,balance,customerID)
      VALUES('1010 3576 1212 1130',2,1,1,3)
INSERT INTO cardInfo(cardID,savingID,openMoney,balance,customerID)
      VALUES('1010 3576 1234 5678',1,1000,1000,1)
     
INSERT INTO cardInfo(cardID,savingID,openMoney,balance,customerID)
      VALUES('1010 3576 1212 1134',2,1,1,2)--customerID要表里有才能插入成功
INSERT INTO cardInfo(cardID,savingID,openMoney,balance,customerID)
      VALUES('1010 3576 1212 1004',2,1,1,4)


--TradeInfo
INSERT INTO tradeInfo(transType,cardID,transMoney) 
      VALUES(0,'1010 3576 1234 5678',900) 
INSERT INTO tradeInfo(transType,cardID,transMoney) 
      VALUES(1,'1010 3576 1212 1130',300)  
INSERT INTO tradeInfo(transType,cardID,transMoney) 
      VALUES(1,'1010 3576 1212 1004',1000) 
INSERT INTO tradeInfo(transType,cardID,transMoney) 
      VALUES(0,'1010 3576 1234 5678',900)  
INSERT INTO tradeInfo(transType,cardID,transMoney) 
      VALUES(1,'1010 3576 1212 1134',5000)  
     
select * from CardInfo
select * from Deposit
select * from TradeInfo
select * from UserInfo

本文转载自:http://blog.csdn.net/yangrunkangbla/article/details/45134269

共有 人打赏支持
杨润康Bla
粉丝 14
博文 76
码字总数 0
作品 0
合肥
后端工程师
Oracle12C中scott账户与表问题

安装了12c版本,发现没有scott用户和11g自带的emp,dept等等的表。于是尝试解锁用户,发现用户不存在。 手动创建用户,出错,和11g不太一样: 原因和pdb,cdb有关。Oracle 12C引入了CDB与PDB...

pmos ⋅ 2016/11/23 ⋅ 0

mysql之数据备份还原

场景: ①由于权限控制,远程数据库在外网不能访问; ②远程数据库连接和查询比较慢,影响工作效率; ③即将发布生产时,验证数据库更新脚本是否无遗漏(如字段是否完整); 分析: 对于①、...

Ye_Kwii ⋅ 2016/11/24 ⋅ 0

关系数据库SQL之可编程性函数(用户自定义函数)

前言 在关系型数据库中除了前面几篇基本的数据库和数据表操作之外,还提供了可编程性的函数、存储过程、事务、触发器及游标。 本文介绍的是函数。 函数分为两种: 系统函数 用户自定义函数 ...

seayxu ⋅ 2016/05/08 ⋅ 0

用 JOTM 向Servlet中添加事务

J2EE 除了提供了 servlet 之外,还提供了大量的其它功能。Servlet 开发者们也许难得使用这些功能,不情愿也没有时间用一个超出所需的大型 J2EE 服务器来替换自己的简单的 servlet。然而,依据...

晨曦之光 ⋅ 2012/03/09 ⋅ 0

关系型数据库和sql语句相关概念

定义 数据仓库,保存数据的.是一个文件系统,也是使用文件的方式保存数据的,但是访问数据(增加删除 修改 查询)必须使用标准的sql语句来访问 常见的关系型数据库 *Oracle -- 大型的应用,收费的...

王佛爷 ⋅ 2016/10/10 ⋅ 0

Oracle12.2新特性—Local UNDO

一、简介: ①:在12C R1版本中undo只支持Global Shared Undo模式, 所有container共享一个UNDO表空间, 目前保留这种模式只是为了升级过渡, ②:在12C R2引入了PDB Local UNDO模式,每个conta...

一个笨小孩 ⋅ 2017/07/24 ⋅ 0

jfinal框架中类文件的热加载

在搞cms 框架用Jfinal的, 遇到一个技术问题 就是cms的模块作为拔插式的 我若想要使用某个模块我就在后台的一个页面上点击按钮运行解析一个xml文件 这个xml文件里面存放着该模块的所有资源文...

lpfreesky ⋅ 2014/11/24 ⋅ 5

mysql学习笔记一

数据库操作 登录数据库系统 mysql –h localhost –uroot -p 创建数据库 create database 数据库名 显示已存在的数据库 show databases; 删除数据库 drop database example; 注:删除数据库,...

独特55 ⋅ 2016/03/09 ⋅ 0

多租户环境

CDB与PDB是Oracle 12C引入的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB)。CDB全称为ContainerData...

whshurk ⋅ 2017/12/14 ⋅ 0

MySQL基础应用

1.登入到MySQL服务器 [root@localhost ~]# mysql -u root -p Enter password: //根据提示输入正确的密码 2.执行MySQL操作语句 以root登入打“mysql>”环境后,执行"show master logs;"语句可...

qualityserver ⋅ 2017/06/11 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

浅谈springboot Web模式下的线程安全问题

我们在@RestController下,一般都是@AutoWired一些Service,由于这些Service都是单例,所以并不存在线程安全问题。 由于Controller本身是单例模式 (非线程安全的), 这意味着每个request过来,...

算法之名 ⋅ 今天 ⋅ 0

知乎Java数据结构

作者:匿名用户 链接:https://www.zhihu.com/question/35947829/answer/66113038 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 感觉知乎上嘲讽题主简...

颖伙虫 ⋅ 今天 ⋅ 0

Confluence 6 恢复一个站点有关使用站点导出为备份的说明

推荐使用生产备份策略。我们推荐你针对你的生产环境中使用的 Confluence 参考 Production Backup Strategy 页面中的内容进行备份和恢复(这个需要你备份你的数据库和 home 目录)。XML 导出备...

honeymose ⋅ 今天 ⋅ 0

JavaScript零基础入门——(九)JavaScript的函数

JavaScript零基础入门——(九)JavaScript的函数 欢迎回到我们的JavaScript零基础入门,上一节课我们了解了有关JS中数组的相关知识点,不知道大家有没有自己去敲一敲,消化一下?这一节课,...

JandenMa ⋅ 今天 ⋅ 0

火狐浏览器各版本下载及插件httprequest

各版本下载地址:http://ftp.mozilla.org/pub/mozilla.org//firefox/releases/ httprequest插件截至57版本可用

xiaoge2016 ⋅ 今天 ⋅ 0

Docker系列教程28-实战:使用Docker Compose运行ELK

原文:http://www.itmuch.com/docker/28-docker-compose-in-action-elk/,转载请说明出处。 ElasticSearch【存储】 Logtash【日志聚合器】 Kibana【界面】 答案: version: '2'services: ...

周立_ITMuch ⋅ 今天 ⋅ 0

使用快嘉sdkg极速搭建接口模拟系统

在具体项目研发过程中,一旦前后端双方约定好接口,前端和app同事就会希望后台同事可以尽快提供可供对接的接口方便调试,而对后台同事来说定好接口还仅是个开始、设计流程,实现业务逻辑,编...

fastjrun ⋅ 今天 ⋅ 0

PXE/KickStart 无人值守安装

导言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装。 常规的办法有什么? 光盘安装系统 ===> 一...

kangvcar ⋅ 昨天 ⋅ 0

使用Puppeteer撸一个爬虫

Puppeteer是什么 puppeteer是谷歌chrome团队官方开发的一个无界面(Headless)chrome工具。Chrome Headless将成为web应用自动化测试的行业标杆。所以我们很有必要来了解一下它。所谓的无头浏...

小草先森 ⋅ 昨天 ⋅ 0

Java Done Right

* 表示难度较大或理论性较强。 ** 表示难度更大或理论性更强。 【Java语言本身】 基础语法,面向对象,顺序编程,并发编程,网络编程,泛型,注解,lambda(Java8),module(Java9),var(...

风华神使 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部