SQL语句创建一个简单的银行数据库

目录

一、银行业务E-R图

二、数据库模型图

转换关系模型后:

三、创建数据库

3.1 创建银行业务数据库

四、创建表

4.1 创建客户信息表

4.2 创建银行卡信息表

4.3 创建交易信息表

4.4 创建存款类型表

结果如下:

​编辑

五、插入适量数据

5.1 客户信息表数据

5.2 银行卡信息表数据

5.3 交易信息表数据

5.4 存款类型数据

结果如下:


一、银行业务E-R图

二、数据库模型图

转换关系模型后:

三、创建数据库

3.1 创建银行业务数据库


mysql> DROP DATABASE IF EXISTS Bank;//如果存在先删除表
Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> CREATE DATABASE IF NOT EXISTS Bank;
Query OK, 1 row affected (0.00 sec)mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| Bank               |
| MySchool_db        |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.01 sec)

四、创建表

4.1 创建客户信息表

CREATE TABLE IF NOT EXISTS userInfo(customerID INT(8) PRIMARY KEY AUTO_INCREMENT COMMENT'客户编号',customerName VARCHAR(10) NOT NULL COMMENT'开户姓名',PID CHAR(18) NOT NULL COMMENT'身份证号',telephone CHAR(11) NOT NULL COMMENT'联系电话',address VARCHAR(50) COMMENT'居住地址'
)ENGINE=INNODB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;

4.2 创建银行卡信息表

CREATE TABLE IF NOT EXISTS cardInfo(cardID VARCHAR(19) NOT NULL PRIMARY KEY COMMENT'卡号',curID VARCHAR(10) NOT NULL DEFAULT'RMB' COMMENT'货币种类',savingID INT(2) NOT NULL COMMENT'存款类型',openDate TIMESTAMP NOT NULL COMMENT'开户日期',openMoney DECIMAL NOT NULL COMMENT'开户金额',balance DECIMAL NOT NULL COMMENT'余额',password VARCHAR(6) NOT NULL DEFAULT'888888' COMMENT'密码',IsReportLoss BIT NOT NULL DEFAULT 0 COMMENT'是否挂失'.customerID INT(8) NOT NULL COMMENT'客户编号'
)ENGINE=INNODB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;ALTER TABLE cardInfo MODIFY openMoney DECIMAL(9,2);
ALTER TABLE cardInfo MODIFY balance DECIMAL(9,2);#确保账户有余额ALTER TABLE cardInfo
ADD CONSTRAINT FK_cardID FOREIGN KEY(cardID) REFERENCES cardInfo(cardID);
ALTER TABLE cardInfo
ADD CONSTRAINT FK_customerID FOREIGN KEY(customerID) REFERENCES userInfo(customerID);
ALTER TABLE cardInfo
ADD CONSTRAINT FK_savingID FOREIGN KEY(savingID) REFERENCES deposit(savingID);
#设立外键

4.3 创建交易信息表

CREATE TABLE IF NOT EXISTS tradeInfo(transDate TIMESTAMP NOT NULL COMMENT'交易日期',cardID CHAR(19) NOT NULL COMMENT'卡号',transType CHAR(10) NOT NULL COMMENT'交易类型',transMoney DECIMAL NOT NULL COMMENT'交易金额',remark TEXT COMMENT'备注',CONSTRAINT FK_cardID FOREIGN KEY(cardID) REFERENCES cardInfo(cardID)
)ENGINE=INNODB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;

4.4 创建存款类型表

CREATE TABLE IF NOT EXISTS deposit(savingID INT(2) PRIMARY KEY COMMENT'存款类型号',savingName VARCHAR(20) NOT NULL COMMENT'存款类型名称',descrip VARCHAR(20) COMMENT'描述'
)ENGINE=INNODB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
结果如下:

五、插入适量数据

5.1 客户信息表数据

INSERT INTO userInfo(customerID,customerName,PID,telephone,address)
VALUES
(1,'王令','320123199001021111','19599931111','江苏淮安'),
(2,'老王','320123199102032222','19599932222','四川成都'),
(3,'嘉文','320123199203043333','19599933333','福建福州'),
(4,'文静','320123199304054444','19599934444','江苏南京'),
(5,'高宇','320123199405065555','19599935555','重庆渝北');

5.2 银行卡信息表数据

INSERT INTO cardInfo(cardID,curID,savingID,openDate,openMoney,balance,password,isReportLoss,customerID)
VALUES
('9999123400000102','RMB',1,NOW(),100,100,'888888',0,1),
('9999123400000203','RMB',1,NOW(),100,1,'888888',0,2),
('9999123400000304','RMB',2,NOW(),10,10,'888888',0,3),
('9999123400000405','RMB',2,NOW(),100,1000,'888888',0,4),
('9999123400000506','RMB',1,NOW(),100,100000,'888888',0,5);
UPADTE cardInfo SET cardID='9999123400000901' WHERE cardID='9999123400000506';

5.3 交易信息表数据

INSERT INTO tradeInfo(transDate,cardID,transType,transMoney,remark)
VALUES
(NOW(),'9999123400000102','取出',222,NOW()),
(NOW(),'9999123400000304','存入',1111,NOW()),
(NOW(),'9999123400000506','取出',1002,NOW()),
(NOW(),'9999123400000102','存入',100,NOW()),
(NOW(),'9999123400000102','存入',2002,NOW()),
(NOW(),'9999123400000304','取出',2000,NOW()),
(NOW(),'9999123400000203','存入',1000,NOW());

5.4 存款类型数据

INSERT INTO deposit(savingID,savingName,descrip)
VALUES(1,'定期',‘ ’),(2,'活期',‘ ’);
结果如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/433303.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle RAC集群启停

文章目录 一、了解集群信息二、RAC单节点启停1、停止Oracle RAC数据库实例2、停止节点上的Oracle Grid Infrastructure服务3、启动节点上的Oracle Grid Infrastructure服务4、启动Oracle RAC数据库实例 三、RAC集群启停1、停止数据库2、停止集群服务3、启动集群服务4、启动数据…

QDockWidget : 想要 top -> left -> rigt -> bottom 的布局实现

上图红圈中的实现,第一次想要实现,总会和想的不一样。 第一种情况 第二种情况 第三种情况 有时候为了达到一种效果,也算是煞费苦心了,且不说这个demo还是找的其他CSDN博主的,但是功夫不负有心人。 解决办法 先让 Doc…

Ubuntu Server 22.04 安装步骤纪录

Ubuntu Server 22.04 安装流程 取得安装程序 安装程序可以通过下方链接直接从官网下载就可以了,官网提供的是iso映像文件,安装前要先将iso映像文件刻录成光盘,或制作成USB开机随身碟。 前往 Ubuntu 官网 开始安装 STEP 1 选择要安装的操作…

完美调试android-goldfish(linux kernel) aarch64的方法

环境要求 Mac m1Mac m1 中 虚拟机安装aarch64 ubuntu22.02Mac m1安装OrbStack,并在其中安装 ubuntu20.04(x86_64) 构建文件系统 在虚拟机 aarch64 ubuntu22.02中构建 安装必要的库 sudo apt-get install libncurses5-dev build-essenti…

【重点】【DP】123.买卖股票的最佳时机III

题目 法1&#xff1a;单次遍历&#xff0c;Best! class Solution {public int maxProfit(int[] prices) {int f1 -prices[0], f2 0, f3 -prices[0], f4 0;for (int i 1; i < prices.length; i) {f1 Math.max(f1, -prices[i]);f2 Math.max(f2, f1 prices[i]);f3 Ma…

Python使用pip命令安装外部库-项目内安装外部库-全局安装外部库

一、前言 在进行Python项目开发时需要安装一些外部库来扩展项目功能&#xff0c;因此需要了解pip命令的详细使用。 二、基本语法 1.安装库 pip install 包名 2.安装特定版本 pip install 包名版本号 3.升级库 pip install --upgrade 包名 4.卸载库 pip uninstall 包名 5.查看已…

Ubuntu使用Docker部署Redis并实现远程访问本地数据库

文章目录 前言1. 安装Docker步骤2. 使用docker拉取redis镜像3. 启动redis容器4. 本地连接测试4.1 安装redis图形化界面工具4.2 使用RDM连接测试 5. 公网远程访问本地redis5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 前言 本文主要介绍如何在Ub…

如何快速搭建实用的爬虫管理平台

目录 一、前言 二、选择合适的爬虫框架 三、搭建数据库 步骤1 步骤2 步骤3 四、搭建Web服务器 步骤1 步骤2 步骤3 步骤4 五、管理爬虫 六、总结 一、前言 爬虫是互联网数据采集的关键工具&#xff0c;但是随着数据量的增加和需求的多样化&#xff0c;手动运行和管…

Chapter 8 - 1. Congestion Management in TCP Storage Networks

This chapter covers the following topics. 本章包括以下主题。 Understanding congestion in TCP storage networks. Detecting congestion in TCP storage networks. Traffic patterns with iSCSI and NVMe/TCP and correlation with network congestion. Preventing co…

【计算机图形学】实验五 一个简单的交互式绘图系统(实验报告分析+截图+源码)

可以先看一看这篇呀~【计算机图形学】专栏前言-CSDN博客https://blog.csdn.net/m0_55931547/article/details/135863062 目录 一、实验目的 二、实验内容

Redis(八)哨兵机制(sentinel)

文章目录 哨兵机制案例认识异常 哨兵运行流程及选举原理主观下线(Subjectively Down)ODown客观下线(Objectively Down)选举出领导者哨兵选出新master过程 哨兵使用建议 哨兵机制 吹哨人巡查监控后台master主机是否故障&#xff0c;如果故障了根据投票数自动将某一个从库转换为新…

开发微信小程序,将图片下载到相册的方法,saveImageToPhotosAlbum怎么用

在开发微信小程序的时候&#xff0c;经常能看到小程序里面有下载按钮&#xff0c;如何将小程序中的图片下载到手机相册中那&#xff0c;下面给大家说一下怎么做&#xff0c;代码如何去写。 一、到微信小程序后台开启“用户隐私保护指引” 1.进入小程序后台&#xff0c;侧拉拉到…