PostgreSQL 创建、删除表
1. PostgreSQL 创建表
(1)创建普通表
create table t1(id int, name text); 或者 create table if not exists t1(id int, name text);
(2)创建带主键的表
create table t2(id int, name text, primary key(id));
(3)创建临时表,在连接断开后临时表会自动删除
create temp table t3(id int, name text);
(4)创建 unlogged 表,这种类型的表不会同步到备库
create unlogged table t4(id int, name text);
(5)查看所有表信息,psql 命令 \d+ 可以列出所有表信息,\d+ 后面跟上具体的表名称,可以查看该表的表结构,如下:
postgres=# \d+ List of relations Schema | Name | Type | Owner | Persistence | Size | Description -----------+------+-------+-------+-------------+------------+------------- pg_temp_3 | t3 | table | antpg | temporary | 8192 bytes | public | t1 | table | antpg | permanent | 8192 bytes | public | t2 | table | antpg | permanent | 8192 bytes | public | t4 | table | antpg | unlogged | 16 kB | (4 rows) postgres=# \d+ t2 Table "public.t2" Column | Type | Collation | Nullable | Default | Storage | Stats target | Description --------+---------+-----------+----------+---------+----------+--------------+------------- id | integer | | not null | | plain | | name | text | | | | extended | | Indexes: "t2_pkey" PRIMARY KEY, btree (id) Access method: heap
2. PostgreSQL 删除表
(1)删除表
drop table t1; 或者 drop table if exists t1;
(2)级联删除表 cascade,当表有相关的依赖对象时,删除表会报错,可以加上 cascade 级联删除相关的对象。
drop table t2 cascade;
文章评论
共0条评论