Browse Source

Update schema-oci.sql (#11662)

- `if exists` is not a recognized oracle expression. To do something like this it needs to be in a package
- `text` is not a valid data type in oracle, adjusted to VARCHAR()
- `on update` does not exist in Oracle
ar-bug
jonny7 8 years ago committed by Alexander Makarov
parent
commit
dca4f00030
  1. 29
      framework/rbac/migrations/schema-oci.sql

29
framework/rbac/migrations/schema-oci.sql

@ -9,41 +9,44 @@
* @since 2.0
*/
drop table if exists "auth_assignment";
drop table if exists "auth_item_child";
drop table if exists "auth_item";
drop table if exists "auth_rule";
drop table "auth_assignment";
drop table "auth_item_child";
drop table "auth_item";
drop table "auth_rule";
-- create new auth_rule table
create table "auth_rule"
(
"name" varchar(64) not null,
"data" text,
"data" varchar(1000),
"created_at" integer,
"updated_at" integer,
primary key ("name")
);
-- create auth_item table
create table "auth_item"
(
"name" varchar(64) not null,
"type" integer not null,
"description" text,
"description" varchar(1000),
"rule_name" varchar(64),
"data" text,
"data" varchar(1000),
"created_at" integer,
"updated_at" integer,
primary key ("name"),
foreign key ("rule_name") references "auth_rule" ("name") on delete set null on update cascade,
key "type" ("type")
foreign key ("rule_name") references "auth_rule"("name") on delete set null,
primary key ("name")
);
-- adds oracle specific index to auth_item
CREATE INDEX auth_type_index ON "auth_item"("type");
create table "auth_item_child"
(
"parent" varchar(64) not null,
"child" varchar(64) not null,
primary key ("parent","child"),
foreign key ("parent") references "auth_item" ("name") on delete cascade on update cascade,
foreign key ("child") references "auth_item" ("name") on delete cascade on update cascade
foreign key ("parent") references "auth_item"("name") on delete cascade,
foreign key ("child") references "auth_item"("name") on delete cascade
);
create table "auth_assignment"
@ -52,5 +55,5 @@ create table "auth_assignment"
"user_id" varchar(64) not null,
"created_at" integer,
primary key ("item_name","user_id"),
foreign key ("item_name") references "auth_item" ("name") on delete cascade on update cascade
foreign key ("item_name") references "auth_item" ("name") on delete cascade
);

Loading…
Cancel
Save