开发者

Multi row insert fail

I'm using PostgreSQL 7.4.19. Why can I not use a basic SQL statement as INSERT? I am running online examples (from the blog 'Faster INSERT for Multiple Rows'):

create table things (things_id serial primary key, thing text);
insert into things (thing) values ('thing nr. 0'),
('thing nr. 1'),
('thing nr. 2'),
('thing nr. 3');

When I run it, it yields:

ERROR:  syntax error at or near ","
LINE 1: insert into things (thing) values ('thing nr. 0'),
                                                         ^

What am I doing开发者_JAVA百科 wrong?


It works for me on PostgreSQL 9.0 , What your PostgreSQL Version?

skytf=> create table things (things_id serial primary key, thing text);
NOTICE:  CREATE TABLE will create implicit sequence "things_things_id_seq" for serial column "things.things_id"

NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "things_pkey" for table "things"
CREATE TABLE
skytf=> \d things
                               Table "skytf.things"
  Column   |  Type   |                         Modifiers                          
-----------+---------+------------------------------------------------------------
 things_id | integer | not null default nextval('things_things_id_seq'::regclass)
 thing     | text    | 
Indexes:
    "things_pkey" PRIMARY KEY, btree (things_id)

skytf=> insert into things (thing) values ('thing nr. 0'),
skytf-> ('thing nr. 1'),
skytf-> ('thing nr. 2'),
skytf-> ('thing nr. 3');
INSERT 0 4

skytf=> select version();
                                                      version                                                      
-------------------------------------------------------------------------------------------------------------------
 PostgreSQL 9.0.1 on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48), 64-bit
(1 row)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜