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.mzph.cn/news/649683.shtml

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

相关文章

java servlet果蔬产业监管系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java Web果蔬产业监管系统是一套完善的java web信息管理系统 serlvetdaobean mvc 模式开发 ,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主 要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5…

Ps:将文件载入堆栈

Ps菜单:文件/脚本/将文件载入堆栈 Scripts/Load Files into Stack 将文件载入堆栈 Load Files into Stack脚本命令可用于将两个及以上的文件载入到同一个 Photoshop 新文档中。 载入的每个文件都将成为独立的图层,并使用其原始文件名作为图层名。 Photos…

254.【2023华为OD机试真题】-任务处理(贪心算法-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-任务处理二.解题思路三.题解代码Python题解代码…

AI编译器的后端优化策略

背景 工作领域是AI芯片工具链相关,很多相关知识的概念都是跟着项目成长建立起来,但是比较整个技术体系在脑海中都不太系统,比如项目参与中涉及到了很多AI编译器开发相关内容,东西比较零碎,工作中也没有太多时间去做复盘…

InforSuiteAS中创中间件windows环境部署

版本:InforSuiteAS_StE_V10.0.5.2.1 环境要求:Java环境 DK1.8版本, 内存2GB或以上 , 硬盘空间 10GB或以上, 监视器 图形界面安装需要256色以上,字符界面安装没有色彩要求 ,浏览器 Microsoft …

【华为 ICT HCIA eNSP 习题汇总】——题目集9

1、缺省情况下,广播网络上 OSPF 协议 Hello 报文发送的周期和无效周期分别为()。 A、10s,40s B、40s,10s C、30s,20s D、20s,30s 考点:①路由技术原理 ②OSPF 解析:&…

多进程并发服务器与多线程并发服务器

文章目录 一、多进程并发服务器使用原理难点特点代码 二、多线程并发服务器使用原理难点特点 总结 一、多进程并发服务器 多进程并发服务器是一种经典的服务器架构,它通过创建多个子进程来处理客户端连接,从而实现并发处理多个客户端请求的能力。 使用…

React16源码: React中commitAllHostEffects内部的commitWork的源码实现

commitWork 1 )概述 在 react commit 阶段的 commitRoot 第二个while循环中调用了 commitAllHostEffects,这个函数不仅仅处理了新增节点,若一个节点已经存在,当它有新的内容要更新或者是它的attributes要更新这个时候&#xff0c…

向量数据库知识积累

前言 前文4篇文章主要介绍了MySQL与Redis相关知识,可能某些同学看来略显枯燥。本文基于最近大热的aigc,介绍其中的核心工具,内部数据存储:向量数据库。本人在最近的项目中也是初次使用了向量数据库,对其中的向量处理、…

臻于至善,CodeArts Snap 二维绘图来一套不?

前言 我在体验 华为云的 CodeArts Snap 时,第一个例子就是绘制三角函数图像,功能注释写的也很简单。 业务场景中,有一类就是需要产出各种二维图形的,比如,折线图、散点图、柱状图等。 为了提前积累业务素材&#xf…

Docker数据卷挂载(以容器化Mysql为例)

数据卷 数据卷是一个虚拟目录,是容器内目录与****之间映射的桥梁 在执行docker run命令时,使用**-v 本地目录:容器目录**可以完成本地目录挂载 eg.Mysql容器的数据挂载 1.在根目录root下创建目录mysql及三个子目录: cd ~ pwd m…

GitBook可以搭建知识库吗?有无其他更好更方便的?

在一个现代化的企业中,知识是一项宝贵的资产。拥有一个完善的企业知识库,不仅可以加速员工的学习和成长,还能提高工作效率和团队协作能力。然而,随着企业不断发展和扩大规模,知识库的构建和管理变得更加复杂和耗时。 |…

mysql的联合索引利用情况

目录 查询条件对应的列值的类型与列对应的类型不一致 只有一个联合索引且包含非主键外全部列 查询条件全部为等值查询 查询条件有范围查询 有联合索引未包含全部列 在使用 mysql 进行数据存储时,经常用到联合索引,但是使用联合索引有一些注意点&…

git checkout和git switch的区别

git checkout 和 git switch 是 Git 中用于切换分支的命令,但它们在某些方面有一些区别。需要注意的是,git switch 是在 Git 2.23 版本引入的,它提供了一种更直观的分支切换方式。 git checkout: 分支切换: 在 Git 2.…

初学数据结构:Java对象的比较

目录 1. PriorityQueue中插入对象2. 元素的比较2.1 基本类型的比较2.2 对象比较的问题 3. 对象的比较3.1 基于Comparable接口类的比较3.2 基于比较器比较3.3 三种方式对比 4. 集合框架中PriorityQueue的比较方式5. 使用PriorityQueue创建大小堆,解决TOPK问题 【本节…

PyTorch 中的nn.Conv2d 类

nn.Conv2d 是 PyTorch 中的一个类,代表二维卷积层(2D Convolution Layer)。这个类广泛用于构建卷积神经网络(CNN),特别是在处理图像数据时。 基本概念 卷积: 在神经网络的上下文中,卷积是一种特…

llamaindex 集成本地大模型

从​​​​​​​​​​​​​​用llamaindex 部署本地大模型 - 知乎Customizing LLMs within LlamaIndex Abstractions 目的:llamaindex 是一个很好的应用框架,基于此搭建一个RAG应用是一个不错的选择,但是由于llamaindex默认设置是openai的…

FlashInternImage实战:使用FlashInternImage实现图像分类任务(一)

文章目录 摘要安装包安装timm 数据增强Cutout和MixupEMA项目结构编译安装DCNv4环境安装过程配置CUDAHOME解决权限不够的问题 按装ninja编译DCNv4 计算mean和std生成数据集 摘要 https://arxiv.org/pdf/2401.06197.pdf 论文介绍了Deformable Convolution v4(DCNv4&…

【MQ02】基础简单消息队列应用

基础简单消息队列应用 在上一课中,我们已经学习到了什么是消息队列,有哪些消息队列,以及我们会用到哪个消息队列。今天,就直接进入主题,学习第一种,最简单,但也是最常用,最好用的消息…

百度百科词条编辑规则是什么?

百度百科词条编辑规则是指在百度百科平台上编辑和创建词条时需要遵循的一系列标准和指南。百度百科作为全球最大的中文百科全书,旨在为用户提供准确、全面、客观的知识信息。为了确保词条内容的质量,百度设定了严格的编辑规则。伯乐网络传媒来给大家分享…