ER Diagram
全部模板

银行数据库表结构

一个覆盖核心资金流的零售银行模型。客户持有一个或多个账户,每个账户记录一笔笔交易流水,卡片基于账户发行,贷款跟踪借款余额。它可很好地推广到金融科技钱包、新型银行和账本式产品。

在编辑器中打开 → 5 张表 · MySQL DDL

此结构中的表

customersaccountstransactionscardsloans

表结构(SQL)

MySQL 方言的 DDL。在编辑器中打开可获得可编辑的可视化 ER 图,或直接将 SQL 复制到你的项目中。

CREATE TABLE customers (
  id INT PRIMARY KEY AUTO_INCREMENT,
  full_name VARCHAR(120) NOT NULL,
  email VARCHAR(254) NOT NULL UNIQUE,
  phone VARCHAR(32),
  created_at DATETIME NOT NULL
);

CREATE TABLE accounts (
  id INT PRIMARY KEY AUTO_INCREMENT,
  customer_id INT NOT NULL,
  account_number VARCHAR(34) NOT NULL UNIQUE,
  type VARCHAR(20) NOT NULL,
  balance DECIMAL(16,2) NOT NULL DEFAULT 0,
  currency VARCHAR(3) NOT NULL,
  opened_at DATETIME NOT NULL,
  FOREIGN KEY (customer_id) REFERENCES customers(id)
);

CREATE TABLE transactions (
  id BIGINT PRIMARY KEY AUTO_INCREMENT,
  account_id INT NOT NULL,
  amount DECIMAL(16,2) NOT NULL,
  direction VARCHAR(6) NOT NULL,
  description VARCHAR(200),
  created_at DATETIME NOT NULL,
  FOREIGN KEY (account_id) REFERENCES accounts(id)
);

CREATE TABLE cards (
  id INT PRIMARY KEY AUTO_INCREMENT,
  account_id INT NOT NULL,
  card_number VARCHAR(19) NOT NULL UNIQUE,
  type VARCHAR(20) NOT NULL,
  expires_on DATE NOT NULL,
  status VARCHAR(20) NOT NULL,
  FOREIGN KEY (account_id) REFERENCES accounts(id)
);

CREATE TABLE loans (
  id INT PRIMARY KEY AUTO_INCREMENT,
  customer_id INT NOT NULL,
  principal DECIMAL(16,2) NOT NULL,
  interest_rate DECIMAL(5,2) NOT NULL,
  term_months INT NOT NULL,
  status VARCHAR(20) NOT NULL,
  opened_at DATE NOT NULL,
  FOREIGN KEY (customer_id) REFERENCES customers(id)
);