答案:在PostgreSQL中使用CREATE TABLE语句创建表,需定义表名、字段名、数据类型及约束;示例创建users表,包含自增主键id、非空姓名name、唯一邮箱email、年龄age和默认当前时间的created_at;常用数据类型包括INTEGER、SERIAL、VARCHAR、TEXT、DATE、TIMESTAMP、BOOLEAN和NUMERIC;可通过\d users查看表结构;建议使用IF NOT EXISTS避免重复建表错误,并合理添加约束保证数据完整性。

在PostgreSQL中创建表,使用CREATE TABLE语句。你需要定义表名、字段名、数据类型以及可选的约束条件(如主键、非空、唯一等)。下面是一个基本语法和实用示例。
基本语法
CREATE TABLE 表名 (字段1 数据类型 [约束],
字段2 数据类型 [约束],
...
);
说明:方括号 [] 中的内容是可选的,比如 NOT NULL、PRIMARY KEY 等约束可以按需添加。
常见数据类型
PostgreSQL支持多种数据类型,常用的包括:
- INTEGER:整数
- SERIAL:自增整数(常用于主键)
- VARCHAR(n):可变长度字符串,最多n个字符
- TEXT:文本字符串,无长度限制
- DATE:日期(年-月-日)
- TIMESTAMP:时间戳
- BOOLEAN:布尔值(true/false)
- NUMERIC(p,s):精确数值,p为总位数,s为小数位数
创建表的示例
假设我们要创建一个用户表 users,包含以下字段:
CREATE TABLE users (id SERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(255) UNIQUE NOT NULL,
age INTEGER,
created_at TIMESTAMP DEFAULT NOW()
);
执行后,PostgreSQL会自动创建该表,并设置好主键、唯一性、默认值等约束。
查看表结构
建表完成后,可以用以下命令查看表结构:
\d users这会在psql命令行工具中显示字段名、类型、约束等信息。
注意事项
- 表名和字段名不区分大小写,除非用双引号包裹(如 "UserName")
- SERIAL 类型会自动创建序列并绑定到字段,适合做主键
- 如果表已存在,再次运行 CREATE TABLE 会报错。可使用 CREATE TABLE IF NOT EXISTS 避免错误
- 建表时尽量加上必要的约束,有助于数据完整性










