在RDS-PostgreSQL中,通过SQL创建表,如无特别指明,表会默认创建在该database名为public的schema下;而通过pgAdmin创建时,一般情况下,创建好的database会有一个public schema,创建表时则需要特别指明schema。
前提
已经通过pgAdmin连接RDS-PostgreSQL实例并添加至Servers。
创建Schema
- 双击数据库连接Server并打开database菜单栏,选择指定的database并单击以展开属于该database的菜单栏。
- 单击Schema选项并右键,点击Create -> Schema... ,以打开schema创建框,如图所示:
- schema的创建框与各栏信息如下:
General:基本信息,包括schema名与拥有者,默认拥有者为启动数据库连接的用户,必填项。
Security:权限配置,包括权限授予与安全标签,非必填项。
Default Privileges:默认权限,包括表、序列、函数、类型的默认权限,非必填项。
SQL:创建SQL,用户通过前面几项填写后自动生成的创建schema的SQL,无法填写与修改。
点击保存,若无报错即为创建schema成功。
创建表
单击点开schema,下拉菜单栏,点击Create -> Table... 以打开Table创建框,如图所示:
General:基本信息,包括表名、拥有者、Schema、Tablespace、是否为分区表,默认拥有者为启动数据库连接的用户,必填项。
Columns:列,该处设置此表各列,包括列名、数据类型、数据长度、精度、是否为空、是否为主键、默认值,也可以选择继承于某表。
Advanced:高级选项,包括是否设置RLS、是否强制设置RLS、是否直接通过自定义Type来创建表等选项,均为非必选项。
Constraints:约束项,例如设置主键、外键与校验等,根据自身需要设置即可,非必填项。
Partitions:分区表配置,可以在此配置分区表属性,非必填项。
Parameters:表参数,主要包括表Vacuum与表年龄限制,非必填项。
Security:权限配置,包括权限授予与安全标签,非必填项。
SQL:创建SQL,用户通过前面几项填写后自动生成的创建database的SQL,无法填写与修改。
点击Save保存,若无报错,即表明创表成功。