Advertisement
Guest User

Untitled

a guest
Dec 7th, 2018
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE TABLE "customer" (
  2.     "customer_id" NUMBER,
  3.     "customer_pin" NUMBER,
  4.     "customer_name" VARCHAR2,
  5.     "customer_address" VARCHAR2,
  6.     "customer_telephone" NUMBER,
  7.     CONSTRAINT CUSTOMER_PK PRIMARY KEY ("customer_id")
  8. CREATE SEQUENCE "CUSTOMER_SEQ"
  9. /
  10. CREATE TRIGGER "BI_CUSTOMER"
  11.   before INSERT ON "CUSTOMER"
  12.   FOR each ROW
  13. BEGIN
  14.   SELECT "CUSTOMER_SEQ".NEXTVAL INTO :NEW."customer_id" FROM dual;
  15. END;
  16. /
  17.  
  18. )
  19. /
  20. CREATE TABLE "employee" (
  21.     "employee_id" NUMBER,
  22.     "employee_name" VARCHAR2,
  23.     "employee_telephone" VARCHAR2,
  24.     "position" NUMBER,
  25.     CONSTRAINT EMPLOYEE_PK PRIMARY KEY ("employee_id")
  26. CREATE SEQUENCE "EMPLOYEE_SEQ"
  27. /
  28. CREATE TRIGGER "BI_EMPLOYEE"
  29.   before INSERT ON "EMPLOYEE"
  30.   FOR each ROW
  31. BEGIN
  32.   SELECT "EMPLOYEE_SEQ".NEXTVAL INTO :NEW."employee_id" FROM dual;
  33. END;
  34. /
  35.  
  36. )
  37. /
  38. CREATE TABLE "account" (
  39.     "account_id" NUMBER,
  40.     "account_number" NUMBER,
  41.     "account_currency" VARCHAR2,
  42.     "account_interest" DECIMAL,
  43.     "account_amount" DECIMAL,
  44.     "customer_id" NUMBER,
  45.     CONSTRAINT ACCOUNT_PK PRIMARY KEY ("account_id")
  46. CREATE SEQUENCE "ACCOUNT_SEQ"
  47. /
  48. CREATE TRIGGER "BI_ACCOUNT"
  49.   before INSERT ON "ACCOUNT"
  50.   FOR each ROW
  51. BEGIN
  52.   SELECT "ACCOUNT_SEQ".NEXTVAL INTO :NEW."account_id" FROM dual;
  53. END;
  54. /
  55.  
  56. )
  57. /
  58. CREATE TABLE "transaction" (
  59.     "transaction_id" NUMBER,
  60.     "customer_id" NUMBER,
  61.     "type" NUMBER,
  62.     "employee_id" NUMBER,
  63.     "account_id" NUMBER,
  64.     "transaction_amount" DECIMAL,
  65.     CONSTRAINT TRANSACTION_PK PRIMARY KEY ("transaction_id")
  66. CREATE SEQUENCE "TRANSACTION_SEQ"
  67. /
  68. CREATE TRIGGER "BI_TRANSACTION"
  69.   before INSERT ON "TRANSACTION"
  70.   FOR each ROW
  71. BEGIN
  72.   SELECT "TRANSACTION_SEQ".NEXTVAL INTO :NEW."transaction_id" FROM dual;
  73. END;
  74. /
  75.  
  76. )
  77. /
  78. CREATE TABLE "type" (
  79.     "type_id" NUMBER,
  80.     "type_name" VARCHAR2,
  81.     CONSTRAINT TYPE_PK PRIMARY KEY ("type_id")
  82. CREATE SEQUENCE "TYPE_SEQ"
  83. /
  84. CREATE TRIGGER "BI_TYPE"
  85.   before INSERT ON "TYPE"
  86.   FOR each ROW
  87. BEGIN
  88.   SELECT "TYPE_SEQ".NEXTVAL INTO :NEW."type_id" FROM dual;
  89. END;
  90. /
  91.  
  92. )
  93. /
  94. CREATE TABLE "position" (
  95.     "position_id" NUMBER,
  96.     "position_name" VARCHAR2,
  97.     CONSTRAINT POSITION_PK PRIMARY KEY ("position_id")
  98. CREATE SEQUENCE "POSITION_SEQ"
  99. /
  100. CREATE TRIGGER "BI_POSITION"
  101.   before INSERT ON "POSITION"
  102.   FOR each ROW
  103. BEGIN
  104.   SELECT "POSITION_SEQ".NEXTVAL INTO :NEW."position_id" FROM dual;
  105. END;
  106. /
  107.  
  108. )
  109. /
  110.  
  111. ALTER TABLE "employee" ADD CONSTRAINT "employee_fk0" FOREIGN KEY ("position") REFERENCES position("position_id");
  112.  
  113. ALTER TABLE "account" ADD CONSTRAINT "account_fk0" FOREIGN KEY ("customer_id") REFERENCES customer("customer_id");
  114.  
  115. ALTER TABLE "transaction" ADD CONSTRAINT "transaction_fk0" FOREIGN KEY ("customer_id") REFERENCES customer("customer_id");
  116. ALTER TABLE "transaction" ADD CONSTRAINT "transaction_fk1" FOREIGN KEY ("type") REFERENCES TYPE("type_id");
  117. ALTER TABLE "transaction" ADD CONSTRAINT "transaction_fk2" FOREIGN KEY ("employee_id") REFERENCES employee("employee_id");
  118. ALTER TABLE "transaction" ADD CONSTRAINT "transaction_fk3" FOREIGN KEY ("account_id") REFERENCES account("account_id");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement