pgsql创建表sql
时间: 2023-08-19 16:06:23 浏览: 117
在 PostgreSQL 中创建表的 SQL 语句可以使用 CREATE TABLE 关键字。以下是一个例子:
CREATE TABLE 表名 (
列名1 数据类型1,
列名2 数据类型2,
...
列名n 数据类型n,
CONSTRAINT 约束名1 PRIMARY KEY (列名1),
CONSTRAINT 约束名2 UNIQUE (列名2),
...
);
其中,列名是表中的列名,数据类型是列的数据类型。约束名可以用于指定主键、唯一性约束等。例如,可以使用 SERIAL 数据类型来创建自增的主键列。以下是一个示例:
CREATE TABLE users (
id SERIAL PRIMARY KEY,
name TEXT,
email TEXT UNIQUE,
created_at TIMESTAMP DEFAULT now()
);
在上述示例中,创建了一个名为 users 的表,包含了 id、name、email 和 created_at 四个列。id 列使用 SERIAL 数据类型作为主键,name 列使用 TEXT 数据类型,email 列使用 TEXT 数据类型并添加了唯一性约束,created_at 列使用 TIMESTAMP 数据类型并设置了默认值为当前时间。
相关问题
pgsql创建表的sql语句
创建表的SQL语句如下:
```sql
DROP TABLE IF EXISTS "tb_test";
CREATE TABLE "public"."tb_test" (
"id" SERIAL8 NOT NULL,
"username" varchar(50) COLLATE "pg_catalog"."default",
"password" varchar(50) COLLATE "pg_catalog"."default",
"conclusion" varchar(50) COLLATE "pg_catalog"."default",
"picture" varchar(255) COLLATE "pg_catalog"."default",
"ext1" varchar(255) COLLATE "pg_catalog"."default",
"create_time" timestamp(6) DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY ("id")
);
COMMENT ON COLUMN "public"."tb_test"."id" IS '主键';
COMMENT ON COLUMN "public"."tb_test"."username" IS '用户名';
COMMENT ON COLUMN "public"."tb_test"."password" IS '密码';
COMMENT ON COLUMN "public"."tb_test"."conclusion" IS '结论';
COMMENT ON COLUMN "public"."tb_test"."picture" IS '图片';
COMMENT ON COLUMN "public"."tb_test"."ext1" IS '扩展字段1';
COMMENT ON COLUMN "public"."tb_test"."create_time" IS '创建时间';
COMMENT ON TABLE "public"."tb_test" IS '测试表';
```
其中,使用`CREATE TABLE`语句创建表,并指定了表名为`tb_test`。表中的字段包括`id`,`username`,`password`,`conclusion`,`picture`,`ext1`和`create_time`。其中,`id`字段是主键,并使用`SERIAL8`类型表示自增。其他字段的类型为`varchar`,长度分别为50和255。`create_time`字段使用`timestamp`类型,并设置了默认值为当前时间戳。使用`COMMENT ON COLUMN`语句为每个字段添加了注释。最后,使用`COMMENT ON TABLE`语句为表添加了注释。
pgsql 创建表
在PostgreSQL(简称PGSQL)中创建表是一个基本的操作,用于存储数据。以下是创建一个简单表的基本语法:
```sql
CREATE TABLE table_name (
column1 data_type constraint,
column2 data_type constraint,
...,
columnN data_type constraint
);
```
例如,如果你想创建一个名为`users`的用户信息表,包含`id`, `name`, 和 `email`字段,你可以这样做:
```sql
CREATE TABLE users (
id SERIAL PRIMARY KEY, -- 自增主键
name VARCHAR(50) NOT NULL, -- 非空字符串类型
email VARCHAR(100) UNIQUE -- 邮箱唯一
);
```
在这个例子中:
- `SERIAL`关键字用于生成自动递增的整数ID。
- `VARCHAR(50)`表示最大长度为50的字符型字段。
- `NOT NULL`意味着这个字段不允许有NULL值。
- `UNIQUE`约束使得该列内的值在整个表中必须是唯一的。
阅读全文