質問: serial型について postgresql7.2.4で user:postgresにより create table test (id serial primary key,num int4) というテーブルを作成し、 grant all on test to public と権限を与えました。 そしてphp4よりuser:nobodyで insert into test (num) values (1) というクエリを実行しようとすると error: test_id_seq.nextval: you don't have permissions to set sequence wash_h_test_id_seq in test.php とでます。 しかし insert into test (id,num) values (1,1) とするとちゃんとデータベースに反映されます。 phpで、このユーザーからserialを使った自動連番で 書き込めるようにするにはどうすればいいのでしょうか。
回答: > error: test_id_seq.nextval: you don't have permissions to set sequence wash_h_test_id_seq in test.php sequenceに関する権限が与えられてないって言われてるので、 grant all on sequence wash_h_test_id_seq to public; とすれば動くのではないでしょうか? 参考url:http://www.postgresql.jp/document/pg825doc/html/sql-grant.html