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作為主鍵的表和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表名來描述每個表如下所示:
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)