PostgreSQL 教程:数据库与表创建,数据类型完整讲解
2026年 8月 17日

PostgreSQL 教程:数据库与表创建,数据类型完整讲解

作者 admin

完成数据库环境部署后,下一步核心操作就是创建数据库、数据表,并合理选择字段数据类型。数据类型决定数据存储格式、占用空间与查询性能,选错类型会引发乱码、精度丢失、存储膨胀等问题。本文完整讲解 SQL 命令建库、建表语法,分类拆解 PostgreSQL 全量常用数据类型,同时结合 RakSmart PostgreSQL 应用模板,演示可视化图形化操作方式,新手无需手写复杂 SQL 也能完成库表搭建。

本地手动部署需要自行安装 pgAdmin、配置访问权限,线上业务想要快速落地可以选用 RakSmart PostgreSQL 应用模板:https://cn.raksmart.com/app_market/app/postgresql.html,平台提供一站式数据库管理体验,无需专业 DBA 即可高效完成库表设计、数据管理。

一、PostgreSQL 数据库创建语法实操

1. 基础创建数据库 SQL

PostgreSQL 教程:数据库与表创建,数据类型完整讲解
  • OWNER:指定数据库归属账号,默认 postgres 超级用户;
  • ENCODING:统一设置 UTF8,杜绝中文存储乱码;
  • IF NOT EXISTS:生产脚本必备,防止库已存在时报错中断。

2. 可视化创建数据库(RakSmart 模板内置 pgAdmin)

RakSmart PostgreSQL 应用模板预装 pgAdmin Web 可视化管理界面,实例零配置启动,开机就能浏览器访问管理后台。
  1. 登录 pgAdmin 左侧服务器列表,展开数据库节点;
  2. 右键「Databases」→Create→Database;
  3. 填写库名、选择所有者、编码设置 UTF8,点击保存一键生成;
  4. 界面底部 SQL 标签可自动生成对应建库语句,方便学习 SQL 语法。
整套流程无需修改配置文件、放行端口,模板部署完成后权限、编码全部预配置,新手直接可视化操作即可。

二、数据表创建完整语法与实战示例

2.1 标准建表语法结构

PostgreSQL 教程:数据库与表创建,数据类型完整讲解
常用约束:NOT NULL非空、UNIQUE唯一、DEFAULT默认值、CHECK自定义校验、PRIMARY KEY主键。

2.2 实战:用户信息表完整建表示例

PostgreSQL 教程:数据库与表创建,数据类型完整讲解
该表覆盖数值、字符串、布尔、日期、JSONB 主流类型,适配绝大多数业务开发场景。

2.3 pgAdmin 图形化建表(RakSmart 模板优势)

依托 RakSmart 预装的 pgAdmin,无需手写 SQL 即可可视化建表:
  1. 进入目标数据库→Schemas→public→Tables;
  2. 右键 Tables→Create→Table;
  3. General 填写表名,Columns 标签新增字段,下拉直接选择数据类型、勾选非空 / 主键;
  4. Constraints 面板配置唯一、检查约束,保存后自动生成数据表;
  5. 支持在线执行 SQL 查询、批量导入导出测试数据,一站式完成表结构设计与数据录入。

三、PostgreSQL 全类别数据类型完整讲解

3.1 数值类型(存储数字、金额、自增 ID)

  1. 整数系列
  • SMALLINT:2 字节,取值 – 32768~32767,适合年龄、评分等小范围数字;
  • INT/INTEGER:4 字节,日常主键、数量首选;
  • BIGINT:8 字节,海量数据自增 ID、流水号;
  • SERIAL/BIGSERIAL:自增伪类型,自动生成序列,用作主键无需手动赋值。
  1. 精确小数(财务必备)
  • NUMERIC (m,n)/DECIMAL (m,n):m 总位数,n 小数位,无精度丢失,存储金额、订单总价;
  1. 浮点数
  • DOUBLE PRECISION:存储温度、测量值,存在精度损耗,财务场景禁止使用。

3.2 字符串文本类型

  1. VARCHAR (n):变长字符,限制最大长度,用户名、手机号、标题通用;
  2. TEXT:无长度上限,性能和 VARCHAR 一致,存储文章、评论、大段备注;
  3. CHAR (n):定长字符,不足长度自动补空格,极少使用,仅固定编码场景。

3.3 日期时间类型

  • DATE:仅存储年月日;
  • TIME:仅存储时分秒;
  • TIMESTAMP:日期 + 时间(无时区);
  • TIMESTAMPTZ:带时区时间戳,跨区域业务必选。

3.4 布尔类型

BOOLEAN,取值 true/false,标记状态:是否启用、是否会员、是否删除。

3.5 PostgreSQL 特色 JSON 类型

  1. JSON:纯文本存储 JSON,每次查询重复解析;
  2. JSONB:二进制结构化存储,支持索引、快速检索,业务扩展字段首选。

3.6 其他实用类型

INET 存储 IP 地址、UUID 唯一标识、ARRAY 数组批量存储多值、BYTEA 二进制文件。

四、RakSmart PostgreSQL 模板一站式管理优势

手动搭建 PostgreSQL 环境,每次新建库表都要处理权限、备份、工具安装等问题,而 RakSmart PostgreSQL 应用模板完美解决运维痛点,三大核心能力:
  1. pgAdmin 可视化管理模板预装完整 pgAdmin Web 界面,浏览器直接操作建库、建表、修改字段、执行 SQL、导入导出数据,不依赖本地客户端,零基础也能完成库表设计工作。
  2. 零配置启动,权限自动初始化实例部署完成自动初始化数据库、创建管理员账号、开放远程访问权限,无需手动修改pg_hba.conf,开机即可连接数据库创建业务库表,省去大量配置步骤。
  3. 便捷运维脚本,保障库表数据安全内置启动、停止、重启、一键备份运维脚本,定期备份库表结构与业务数据,防止误删表、丢失数据,简化长期线上运维工作。
部署仅需三步:选购对应配置套餐→应用市场一键部署 PostgreSQL 模板→获取连接信息,直接在 pgAdmin 内完成数据库、数据表搭建。

五、FAQ 建库建表与数据类型常见问题

Q1:创建数据库提示编码错误,中文乱码怎么解决?

A:建库语句显式指定 UTF8 编码;使用 RakSmart 模板部署的实例默认全局 UTF8,不会出现乱码问题。

Q2:存储金额用 FLOAT 还是 NUMERIC?

A:财务金额必须用 NUMERIC,FLOAT 浮点数会出现精度丢失,导致对账出错。

Q3:JSON 和 JSONB 该怎么选?

A:需要频繁查询、筛选 JSON 内部字段选 JSONB;仅单纯存储不检索 JSON 内容选用 JSON。

Q4:本地手动部署 pgAdmin 操作繁琐,有没有更简单方案?

A:推荐 RakSmart PostgreSQL 应用模板,预装 pgAdmin,无需额外安装、配置,浏览器直接访问图形化管理库表。

Q5:建表时主键用 INT 还是 BIGSERIAL?

A:小型项目 INT 够用;预估数据量超百万、长期迭代项目直接选用 BIGSERIAL,避免 ID 溢出。

Q6:误删数据表如何快速恢复?

A:本地部署需要自行编写备份脚本;RakSmart 模板自带一键备份脚本,可快速恢复历史库表结构与数据。

六、总结

创建数据库、数据表可以通过 SQL 命令行或者 pgAdmin 可视化两种途径来完成,SQL 脚本更适合批量自动化执行,图形界面则更适合新手快速完成表结构的设计工作。数据类型的选择会直接影响数据库的运行性能以及存储数据的准确性,在开发过程中需要根据不同业务场景合理选用数值、文本、时间、JSON 等字段类型,财务金额类业务尤其要避开浮点类型,防止出现精度丢失的问题。

如果选择本地手动部署数据库环境,还需要额外安装管理工具、调试访问权限以及自行编写备份脚本,整体流程比较繁琐,而线上开发与项目落地,大家可以选用 RakSmart PostgreSQL 应用模板(https://cn.raksmart.com/app_market/app/postgresql.html)。该模板自带 pgAdmin 可视化操作工具,实例部署后开箱即用,配套齐全的运维脚本,即便没有专业 DBA 的技术支持,普通开发者也可以顺利完成数据库创建、数据表设计以及日常的数据维护工作。