如何在PostgreSQL上使用架构指定数据库参数的大小?

时间:2018-07-02 16:11:01

标签: postgresql ddl

我尝试在Heroku中使用schema.sql文件为PostreSQL初始化数据库,但是我想给表的参数添加日期的大小有问题。在id int (11) auto_increment PRIMARY KEY行中,我得到了错误:

ERROR:  syntax error at or near "("
LINE 2:   id int(11) auto_increment PRIMARY KEY,

这是文件schema.sql

drop table if exists users;
create table users (
  id int(11) auto_increment PRIMARY KEY,
  name varchar(100),
  email varchar(100),
  username varchar(30),
  password varchar(100),
  register_date timestamp not null
);

这是错误:

mike@mike-thinks:~/Programing/Rasa/myflaskapp$ heroku pg:psql < schema.sql--> Connecting to postgresql-clean-86569
NOTICE:  table "users" does not exist, skipping
DROP TABLE
ERROR:  syntax error at or near "("
LINE 2:   id int(11) auto_increment PRIMARY KEY,
                ^
NOTICE:  table "articles" does not exist, skipping
DROP TABLE
ERROR:  syntax error at or near "("
LINE 2:   id int(11) PRIMARY KEY,
                ^

1 个答案:

答案 0 :(得分:0)

如果我没记错(我很确定),则postgresSQL不会接受int的大小,而是接受NUMERIC的大小。 您可以进行columnName NUMERIC(11) 或带有约束,迫使其介于范围之间