app/config/sql/db_acl.sqlはPostgreSQLで使えない
そのまま使えないので書き換える
修正前
CREATE TABLE acos ( id INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, parent_id INTEGER(10) DEFAULT NULL, model VARCHAR(255) DEFAULT '', foreign_key INTEGER(10) UNSIGNED DEFAULT NULL, alias VARCHAR(255) DEFAULT '', lft INTEGER(10) DEFAULT NULL, rght INTEGER(10) DEFAULT NULL, PRIMARY KEY (id) ); CREATE TABLE aros_acos ( id INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, aro_id INTEGER(10) UNSIGNED NOT NULL, aco_id INTEGER(10) UNSIGNED NOT NULL, _create CHAR(2) NOT NULL DEFAULT 0, _read CHAR(2) NOT NULL DEFAULT 0, _update CHAR(2) NOT NULL DEFAULT 0, _delete CHAR(2) NOT NULL DEFAULT 0, PRIMARY KEY(id) ); CREATE TABLE aros ( id INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, parent_id INTEGER(10) DEFAULT NULL, model VARCHAR(255) DEFAULT '', foreign_key INTEGER(10) UNSIGNED DEFAULT NULL, alias VARCHAR(255) DEFAULT '', lft INTEGER(10) DEFAULT NULL, rght INTEGER(10) DEFAULT NULL, PRIMARY KEY (id) );
修正後
--シーケンス作成 CREATE SEQUENCE acos_id_seq INCREMENT BY 1 NO MAXVALUE NO MINVALUE CACHE 1; CREATE SEQUENCE aros_acos_id_seq INCREMENT BY 1 NO MAXVALUE NO MINVALUE CACHE 1; CREATE SEQUENCE aros_id_seq INCREMENT BY 1 NO MAXVALUE NO MINVALUE CACHE 1; CREATE TABLE acos ( id INTEGER NOT NULL PRIMARY KEY, parent_id INTEGER DEFAULT NULL, model TEXT DEFAULT '', foreign_key INTEGER DEFAULT NULL, alias TEXT DEFAULT '', lft INTEGER DEFAULT NULL, rght INTEGER DEFAULT NULL ) WITH oids; CREATE TABLE aros_acos ( id INTEGER NOT NULL PRIMARY KEY, aro_id INTEGER NOT NULL, aco_id INTEGER NOT NULL, _create TEXT NOT NULL DEFAULT 0, _read TEXT NOT NULL DEFAULT 0, _update TEXT NOT NULL DEFAULT 0, _delete TEXT NOT NULL DEFAULT 0 ) WITH oids; CREATE TABLE aros ( id INTEGER NOT NULL PRIMARY KEY, parent_id INTEGER DEFAULT NULL, model TEXT DEFAULT '', foreign_key INTEGER DEFAULT NULL, alias TEXT DEFAULT '', lft INTEGER DEFAULT NULL, rght INTEGER DEFAULT NULL ) WITH oids; --デフォルト値設定 ALTER TABLE acos ALTER COLUMN id SET DEFAULT nextval('acos_id_seq'::regclass); ALTER TABLE aros_acos ALTER COLUMN id SET DEFAULT nextval('aros_acos_id_seq'::regclass); ALTER TABLE aros ALTER COLUMN id SET DEFAULT nextval('aros_id_seq'::regclass);
@cakephp 1.2.7 + PostgreSQL 8.2.15