这就是我尝试创建表格的方式:
CREATE TABLE namevalues
(
seqid integer NOT NULL,
name text(50) NOT NULL,
value text(50),
CONSTRAINT namevalues_pkey PRIMARY KEY (seqid, name)
);
我尝试过这样做,但这不起作用。任何人都可以告诉我该如何指定长度?
答案 0 :(得分:1)
PostgreSQL中的TEXT
类型没有大小。你可以像这样解决它:
CREATE TABLE namevalues
(
seqid integer NOT NULL,
name text NOT NULL,
value text,
CONSTRAINT namevalues_pkey PRIMARY KEY (seqid, name)
);
或使用VARCHAR(50)
代替TEXT
。
答案 1 :(得分:0)
使用varchar(50)代替text(50)。
由于,
PostgreSQL API说text
数据类型没有大小,它允许无限长度的变量
CREATE TABLE namevalues
(
seqid integer NOT NULL,
name varchar(50) NOT NULL,
value varchar(50),
CONSTRAINT namevalues_pkey PRIMARY KEY (seqid, name)
);
<强> Reference 强>
答案 2 :(得分:0)
不要使用text
,您需要varchar
...
CREATE TABLE namevalues
(
seqid integer NOT NULL,
name varchar(50) NOT NULL,
value varchar(50),
CONSTRAINT namevalues_pkey PRIMARY KEY (seqid, name)
);
来自PostgreSQL docs ...
text:variable unlimited length