某银行数据库 bank 中的帐户表 account 结构如下,约束表中的帐户余额不能为负值:CHECK(balance>=0),创建 account 表。
时间: 2024-12-18 07:17:58 浏览: 7
在创建名为 `account` 的账户表结构时,考虑到余额不允许为负值的限制,你可以使用 SQL(结构化查询语言)来定义这个表,例如在 MySQL 或 PostgreSQL 等支持 CHECK 约束的数据库系统中:
```sql
CREATE TABLE account (
id INT PRIMARY KEY,
account_number VARCHAR(50) NOT NULL UNIQUE,
account_holder_name VARCHAR(100) NOT NULL,
balance DECIMAL(10, 2) CHECK (balance >= 0),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
```
在这个例子中:
- `id` 列是主键,用于唯一标识每个账户;
- `account_number` 存储账户号码,通常为字符串,不能为空且需要唯一;
- `account_holder_name` 存储账户持有人名字,同样不能为空;
- `balance` 列存储账户余额,数据类型为 DECIMAL(10, 2),表示最多有两位小数,并且通过 CHECK 约束保证其大于等于零;
- `created_at` 和 `updated_at` 分别记录账户创建时间和最近更新时间。
阅读全文