PostgreSQL – 创建表

PostgreSQL – 创建表


PostgreSQL CREATE TABLE 语句用于在任何给定数据库中创建新表。

句法

CREATE TABLE 语句的基本语法如下 –

CREATE TABLE table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
   PRIMARY KEY( one or more columns )
);

CREATE TABLE 是一个关键字,告诉数据库系统创建一个新表。表的唯一名称或标识符遵循 CREATE TABLE 语句。最初,当前数据库中的空表由发出命令的用户拥有。

然后,在括号中,是列表,定义表中的每一列以及它是什么类型的数据类型。通过下面给出的示例,语法将变得清晰。

例子

以下是一个示例,它创建了一个以 ID 作为主键的 COMPANY 表,NOT NULL 是显示在此表中创建记录时这些字段不能为 NULL 的约束 –

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

让我们再创建一张表,我们将在后续章节的练习中使用它 –

CREATE TABLE DEPARTMENT(
   ID INT PRIMARY KEY      NOT NULL,
   DEPT           CHAR(50) NOT NULL,
   EMP_ID         INT      NOT NULL
);

您可以使用\d命令验证您的表是否已成功创建,该命令将用于列出附加数据库中的所有表。

testdb-# \d

上面给出的 PostgreSQL 语句将产生以下结果 –

           List of relations
 Schema |    Name    | Type  |  Owner
--------+------------+-------+----------
 public | company    | table | postgres
 public | department | table | postgres
(2 rows)

使用\d tablename描述每个表,如下所示 –

testdb-# \d company

上面给出的 PostgreSQL 语句将产生以下结果 –

        Table "public.company"
  Column   |     Type      | Modifiers
-----------+---------------+-----------
 id        | integer       | not null
 name      | text          | not null
 age       | integer       | not null
 address   | character(50) |
 salary    | real          |
 join_date | date          |
Indexes:
    "company_pkey" PRIMARY KEY, btree (id)

觉得文章有用?

点个广告表达一下你的爱意吧 !😁