2012-02-11 48 views
0

IM膩子收到此錯誤,不知道爲什麼,看起來我的權利..錯誤與AUTO_INCREMENT psql的膩子

psql:pierre.sql:10: ERROR: syntax error at or near "AUTO_INCREMENT" 
LINE 2: c_id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, 
           ^
psql:pierre.sql:18: ERROR: syntax error at or near "AUTO_INCREMENT" 
LINE 2: r_id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, 

--DROP TABLE customer, reservation; 
CREATE TABLE customer(
    c_id  INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    c_ref  VARCHAR(30) NOT NULL, 
    f_name  VARCHAR(30) NOT NULL, 
    l_name  VARCHAR(30) NOT NULL, 
    address  VARCHAR(100) NOT NULL, 
    email  VARCHAR(100) NOT NULL, 
    phone  VARCHAR(11) NOT NULL 
); 
CREATE TABLE reservation(
    r_id  INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    c_id  VARCHAR(30) NOT NULL REFERENCES customer(c_id), 
    book_date DATE NOT NULL CHECK (book_date <= now()), 
    s_time  DOUBLE NOT NULL, 
    e_time  DOUBLE NOT NULL, 
    amount  INTEGER NOT NULL 
); 

任何想法,爲什麼?

回答

3

auto_increment看起來像你會用MySQL的東西。


但是,在這裏,似乎你正在使用PostgreSQL。

根據手冊的datatype serial部,PostgreSQL的等效的auto_incrementserialbigserial

引用該頁面:

的數據類型serialbigserial不是真正的類型,而僅僅 一個符號上的便利設立的唯一標識符列 (類似於一些其他數據庫所支持的AUTO_INCREMENT財產)