文章目录

  • 一、建立数据库
    • 1.六个表的内容
    • 2.表内部关系的说明
      • (1)创表分先后
      • (2)六个表:
      • (3)内容说明
    • 3.建立表的代码
      • (1)建立数据库
      • (2)表branch
      • (3)表account
      • (4)customer表
      • (5)depositor表
      • (6)loan表
      • (7)borrower表
  • 附录:一键建库

一、建立数据库

1.六个表的内容

第2章2-3 branch表

第2章图2-1 account表

第2章图2-4 customer表

书上的customer表:

实际的customer表:因为borrower表有一个Jackson,而borrower中有customer的外码,所以要插入一个Jackson到customer表中。

第2章图2-5 depositor表

第2章图2-6 loan表

第2章图2-7 borrower表

2.表内部关系的说明

(1)创表分先后

先后指A表的外码就是引用B表的主码,所以得先创建B表

  • branch表中branch_name是主码
  • accout表中account_number是主码,branch_name是branch表中的外码
  • customer表中customer_name是主码
  • depositor表中customer_name是customer表中的外码,account_number是account表中的外码
  • loan表中loan_number是主码,branch_name是branch表中的外码
  • borrower表中customer_name是customer表中的外码,loan_number是loan表中的外码

(2)六个表:

branch (branch_name, branch_city, assets)

customer (customer_name, customer_street, customer_city)

account (account_number, branch_name, balance)

loan (loan_number, branch_name, amount)

depositor (customer_name, account_number)

borrower (customer_name, loan_number)

(3)内容说明

账户

account表示存款表,balance表示存款
depositor表示存款人表,有了存款人的名字customer_name

借款

loan表示贷款表:amount表示贷款金额。
borrower表示贷款人表,有了贷款人的名字customer_name

客户表

customer_name表示客户的名字,这些包括借钱的和存钱的。

3.建立表的代码

(1)建立数据库

create database bank;
use bank;

(2)表branch

创建

create table branch(
branch_name char(30) NOT NULL,
branch_city char(30),
assets decimal(12),
primary key(branch_name)
);

插入数据

insert into branch values
('Brighton','Brooklyn',7100000),
('Downtown','Brooklyn',9000000),
('Mianus','Horseneck',400000),
('North Town','Rye',3700000),
('Perryridge','Horseneck',1700000),
('Pownal','Bennington',300000),
('Redwood','Palo Alto',2100000),
('Round Hill','Horseneck',8000000);

(3)表account

创建

create table account (
account_number char(10),
branch_name char(30)  NOT  NULL,
balance decimal(12),
PRIMARY KEY (account_number),
FOREIGN KEY (branch_name) REFERENCES branch(branch_name),
CONSTRAINT chk_balance CHECK (balance >= 0 )
);

插入数据

insert into account values
('A-101','Downtown',500),
('A-102','Perryridge',400),
('A-201','Brighton',900),
('A-215','Mianus',700),
('A-217','Brighton',750),
('A-222','Redwood',700),
('A-305','Round Hill',350);

(4)customer表

创建

create table customer(
customer_name char(30),
customer_street char(30),
customer_city char(30),
primary key(customer_name)
);

插入数据

insert into customer values
('Adams','Spring','Pittsfield'),
('Brooks','Senator','Brooklyn'),
('Curry','North','Rye'),
('Glenn','Sand Hill','Woodside'),
('Green','Walnut','Stamford'),
('Hayes','Main','Harrison'),
('Johnson','Alma','Palo Alto'),
('Jones','Main','Harrison'),
('Lindsay','Park','Pittsfield'),
('Smith','North','Rye'),
('Turner','Putnam','Stamford'),
('Williams','Nassau','Princeton');

(5)depositor表

创建

create table depositor(
customer_name char(30),
account_number char(10),
FOREIGN KEY (customer_name) REFERENCES customer(customer_name),
FOREIGN KEY (account_number) REFERENCES account(account_number)
);

插入数据

insert into depositor values
('Hayes','A-102'),
('Johnson','A-101'),
('Johnson','A-201'),
('Jones','A-217'),
('Lindsay','A-222'),
('Smith','A-215'),
('Turner','A-305');

(6)loan表

创建

create table loan(
loan_number char(30),
branch_name char(30),
amount int,
primary key(loan_number),
FOREIGN KEY (branch_name) REFERENCES branch(branch_name)
);

插入数据

insert into loan values
('L-11','Round Hill',900),
('L-14','Downtown',1500),
('L-15','Perryridge',1500),
('L-16','Perryridge',1300),
('L-17','Downtown',1000),
('L-23','Redwood',2000),
('L-93','Mianus',500);

(7)borrower表

创建

create table borrower(
customer_name char(30),
loan_number char(30),
FOREIGN KEY (loan_number) REFERENCES loan(loan_number),
FOREIGN KEY (customer_name) REFERENCES customer(customer_name)
);

插入数据

insert into borrower values
('Adams','L-16'),
('Curry','L-93'),
('Hayes','L-15'),
('Jones','L-17'),
('Smith','L-11'),
('Smith','L-23'),
('Williams','L-17');
insert into customer values
('Jackson',null,null);
insert into borrower values
('Jackson','L-14');

附录:一键建库

create database bank;
use bank;create table branch(
branch_name char(30) NOT NULL,
branch_city char(30),
assets decimal(12),
primary key(branch_name)
);insert into branch values
('Brighton','Brooklyn',7100000),
('Downtown','Brooklyn',9000000),
('Mianus','Horseneck',400000),
('North Town','Rye',3700000),
('Perryridge','Horseneck',1700000),
('Pownal','Bennington',300000),
('Redwood','Palo Alto',2100000),
('Round Hill','Horseneck',8000000);create table account (
account_number char(10),
branch_name char(30)  NOT  NULL,
balance decimal(12),
PRIMARY KEY (account_number),
FOREIGN KEY (branch_name) REFERENCES branch(branch_name),
CONSTRAINT chk_balance CHECK (balance >= 0 )
);insert into account values
('A-101','Downtown',500),
('A-102','Perryridge',400),
('A-201','Brighton',900),
('A-215','Mianus',700),
('A-217','Brighton',750),
('A-222','Redwood',700),
('A-305','Round Hill',350);create table customer(
customer_name char(30),
customer_street char(30),
customer_city char(30),
primary key(customer_name)
);insert into customer values
('Adams','Spring','Pittsfield'),
('Brooks','Senator','Brooklyn'),
('Curry','North','Rye'),
('Glenn','Sand Hill','Woodside'),
('Green','Walnut','Stamford'),
('Hayes','Main','Harrison'),
('Johnson','Alma','Palo Alto'),
('Jones','Main','Harrison'),
('Lindsay','Park','Pittsfield'),
('Smith','North','Rye'),
('Turner','Putnam','Stamford'),
('Williams','Nassau','Princeton');create table depositor(
customer_name char(30),
account_number char(10),
FOREIGN KEY (customer_name) REFERENCES customer(customer_name),
FOREIGN KEY (account_number) REFERENCES account(account_number)
);insert into depositor values
('Hayes','A-102'),
('Johnson','A-101'),
('Johnson','A-201'),
('Jones','A-217'),
('Lindsay','A-222'),
('Smith','A-215'),
('Turner','A-305');create table loan(
loan_number char(30),
branch_name char(30),
amount int,
primary key(loan_number),
FOREIGN KEY (branch_name) REFERENCES branch(branch_name)
);insert into loan values
('L-11','Round Hill',900),
('L-14','Downtown',1500),
('L-15','Perryridge',1500),
('L-16','Perryridge',1300),
('L-17','Downtown',1000),
('L-23','Redwood',2000),
('L-93','Mianus',500);create table borrower(
customer_name char(30),
loan_number char(30),
FOREIGN KEY (loan_number) REFERENCES loan(loan_number),
FOREIGN KEY (customer_name) REFERENCES customer(customer_name)
);insert into borrower values
('Adams','L-16'),
('Curry','L-93'),
('Hayes','L-15'),
('Jones','L-17'),
('Smith','L-11'),
('Smith','L-23'),
('Williams','L-17');
insert into customer values
('Jackson',null,null);
insert into borrower values
('Jackson','L-14');

创建银行数据库(database 第5版)相关推荐

  1. Oracle Database 9i 10g 11g编程艺术 深入数据库体系结构 第2版pdf

    下载地址:网盘下载 <Oracle Database 9i/10g/11g编程艺术:深入数据库体系结构>是公认的Oracle数据库权威指南,凝聚了世界顶尖的Oracle专家Thomas K ...

  2. oracle创建目录的命令,使用create database命令手工创建Oracle数据库

    使用create database命令手工创建Oracle数据库 1. 设置环境变量ORACLE_SID export ORACLE_SID=mdb 2. 创建数据库初始化参数 cd $ORACLE_ ...

  3. 创建MySQL数据库的副本_MySQL创建数据库(CREATE DATABASE语句)

    在 MySQL 中,可以使用 CREATE DATABASE 语句创建数据库,语法格式如下: CREATE DATABASE [IF NOT EXISTS] [[DEFAULT] CHARACTER ...

  4. mysql r创建用户名_MySQL_mysql database manual(mysql数据库手册),2.1登入到mysql控制台[用户名为r - phpStudy...

    mysql database manual(mysql数据库手册) 2.1登入到mysql控制台[用户名为root,密码缺省为空] 切换到mysql的bin目录cd d:/wamp/mysql/bin ...

  5. mysql创建database_MySQL Create Database 创建数据库

    创建数据库 CREATE DATABASE 语法用于创建一个数据库. 语法: CREATE DATABASE db_name PHP MySQL 函数库中,mysql_query() 函数用于向 My ...

  6. oracle简易版创建数据库,oracle创建一个数据库三步走

    以前开发的时候用得比较多的是mysql和sql server,oracle用的比较少,用起来比较生疏,mysql和sql server用起来比较类似,就oracle的使用方式和他们不同,oracle在 ...

  7. node+express项目链接MySQL数据库(最简单版)

    node+express项目链接MySQL数据库(最简单版) (假定你node+express项目已创建完成,可参照这里) 第一步.安装mysql驱动 npm install mysql --save ...

  8. mvc移动创建oracle表,使用 ASP.NET MVC (C#)在15分钟内创建电影数据库应用程序 | Microsoft Docs...

    使用 ASP.NET MVC 在 15 分钟内创建电影数据库应用程序 (C#)Create a Movie Database Application in 15 Minutes with ASP.NE ...

  9. Google Earth Engine(GEE)——ASTER全球水体数据库(ASTWBD)第1版

    ASTER全球水体数据库(ASTWBD)第1版 Terra高级星载热发射和反射辐射计(ASTER)全球水体数据库(ASTWBD)第1版数据产品以赤道1角秒(约30米)的空间分辨率提供了大于0.2平方公 ...

最新文章

  1. float gpu 加速_tensorflow - GPU 加速
  2. ubuntu 网卡相关
  3. python bp神经网络 异或_基于python的BP神经网络及异或实现过程解析
  4. Learning representations by back-propagating errors原文解读
  5. 【spider】多线程爬虫
  6. springmvc+swagger2
  7. 干货|基于深度学习的目标检测算法面试必备(RCNN~YOLOv5)
  8. [原] Cgroup CPU, Blkio 测试
  9. android数码管字体,matplotlib绘图时显示额外的“figure”浮窗
  10. stm8s103头文件
  11. 利用循环打印正方形和长方形
  12. Jquery获取所有子元素
  13. Linux Ubuntu 鼠标变为十字架锁死解决办法
  14. python read csv dtype_如何使用pandas将csv列作为dtype列表读取?
  15. 05-3. 六度空间 (30)
  16. 【linux 防火墙】Linux如何关闭防火墙
  17. python io.StringIO函数
  18. Mac电脑结束进程方法大全
  19. js生成随机数和把日期格式转换成yyyyMMddHHmmss的方法
  20. svn服务器如何查询文档,windows 查看svn服务器

热门文章

  1. 深潜:10 步重塑你的个人品牌
  2. 【android开发】修改主题theme(系统自带样式总结)
  3. ubuntu -- 常规操作 编译、删除
  4. php 上传文件 io错误,怎么解决discuz上传头像出现洗“IO错误”方法大全
  5. 零基础的同学看过来,如何系统学习前端,只要你掌握了,学习web前端的思路就打开了,为以后成为高级前端工程师做一个铺垫
  6. discuz批量注册马甲
  7. 【电气专业知识问答】问:监控系统(NCS)的报警功能有哪些?
  8. 新智元2019 AI独角兽白皮书:58%落户北京,25%创始人出身清华
  9. 诺基亚5530使用技巧整理
  10. php框架写博客,用PHP写框架用框架写应用程序