Sie sind auf Seite 1von 8

Database Manipulation in SQL

The SQL statements showing the use of database creation, table


creation, and table alteration.

Create database DEODB_<StudentID>;

CREATE TABLE CUST_TYPE


(
CUST_TYPE CHAR(1) NOT NULL
, CUST_TYPE_DESC VARCHAR2(50)
, CONSTRAINT CUST_TYPE_PK PRIMARY KEY
(
CUST_TYPE
)
ENABLE
);
CREATE TABLE GOVT_LEVEL
(
GOVT_LEVEL CHAR(1) NOT NULL
, GOVT_LEVEL_DESC VARCHAR2(50)
, CONSTRAINT GOVT_LEVEL_PK PRIMARY KEY
(
GOVT_LEVEL
)
ENABLE
);
CREATE TABLE BUS_SECTOR
(
SECTOR_ID CHAR(2) NOT NULL
, SECTOR_LEVEL_DESC VARCHAR2(50)
, CONSTRAINT BUS_SECTOR_PK PRIMARY KEY
(
SECTOR_ID
)
ENABLE
);

CREATE TABLE LEGAL_STRUCT


(
LEGAL_STRUCT_ID CHAR(1) NOT NULL
, LEGAL_STRUCT_DESC VARCHAR2(50)
, CONSTRAINT LEGAL_STRUCT_PK PRIMARY KEY
(
LEGAL_STRUCT_ID
)
ENABLE
);
CREATE TABLE SCHOOL_LVL
(
SCHOOL_LVL_ID CHAR(1) NOT NULL
, SCHOOL_LVL_DESC VARCHAR2(50)
, CONSTRAINT SCHOOL_LVL_PK PRIMARY KEY
(
SCHOOL_LVL_ID
)
ENABLE
);
CREATE TABLE SCHOOL_TYPE
(
SCHOOL_TYPE CHAR(1) NOT NULL
, SCHOOL_TYPE_DESC VARCHAR2(50)
, CONSTRAINT SCHOOL_TYPE_PK PRIMARY KEY
(
SCHOOL_TYPE
)
ENABLE
);

CREATE TABLE ADDRESS_TYPE


(
ADDRESS_TYPE CHAR(1) NOT NULL
, ADDRESS_TYPE_DESC VARCHAR2(50)
, CONSTRAINT ADDRESS_TYPE_PK PRIMARY KEY
(
ADDRESS_TYPE
)
ENABLE
);

CREATE TABLE EVENT_TYPE


(
EVENT_TYPE CHAR NOT NULL
, EVENT_TYPE_DESC VARCHAR2(50)
, CONSTRAINT EVENT_TYPE_PK PRIMARY KEY
(
EVENT_TYPE
)
ENABLE
);

CREATE TABLE CERT_TYPE


(
CERT_TYPE INTEGER NOT NULL
, CERT_TYPE_DESC VARCHAR2(50)
, CONSTRAINT CERT_TYPE_PK PRIMARY KEY
(
CERT_TYPE
)
ENABLE
);
CREATE TABLE STAFF_TYPE
(
STAFF_TYPE CHAR(1) NOT NULL
, STAFF_TYPE_DESC VARCHAR2(50)
, CONSTRAINT STAFF_TYPE_PK PRIMARY KEY
(
STAFF_TYPE
)
ENABLE
);

CREATE TABLE PRODUCT_TYPE


(
PRODUCT_TYPE CHAR(1) NOT NULL
, PRODUCT_TYPE_DESC VARCHAR2(50)
, CONSTRAINT PRODUCT_TYPE_PK PRIMARY KEY
(
PRODUCT_TYPE
)
ENABLE
);
CREATE TABLE ADDRESS
(
ADDRESS_ID VARCHAR2(20) NOT NULL
, ADDRESS_TYPE CHAR(1)
, STREET_DTLS VARCHAR2(50)
, CITY VARCHAR2(30)
, STATE CHAR(3)
, POSTCODE CHAR(4)
, CONSTRAINT ADDRESS_PK PRIMARY KEY
(
ADDRESS_ID
)
ENABLE
);

CREATE TABLE CUSTOMER


(
CUST_ID INTEGER NOT NULL
, CUST_NAME VARCHAR2(50)
, CUST_EMAIL VARCHAR2(50)
, CUST_PHONE VARCHAR2(15)
, CUST_CONTACT_NAME VARCHAR2(50)
, CUST_CONTACT_PHONE VARCHAR2(15)
, CUST_CONTACT_EMAIL VARCHAR2(50)
, CUST_TYPE CHAR(1)
, ADDRESS_ID INTEGER
, CONSTRAINT CUSTOMER_PK PRIMARY KEY
(
CUST_ID
)
ENABLE
);

CREATE TABLE GOVERNMENT


(
CUST_ID INTEGER NOT NULL
, GOVT_LEVEL CHAR(1)
, CONSTRAINT GOVERNMENT_PK PRIMARY KEY
(
CUST_ID
)
ENABLE
);

ALTER TABLE GOVERNMENT


ADD CONSTRAINT GOVERNMENT_FK1 FOREIGN KEY
(
)
REFERENCES CUSTOMER
(
CUST_ID
)
ENABLE;

ALTER TABLE GOVERNMENT


ADD CONSTRAINT GOVERNMENT_FK2 FOREIGN KEY
(
GOVT_LEVEL
)
REFERENCES GOVT_LEVEL
(
GOVT_LEVEL
)
ENABLE;
CREATE TABLE BUSINESS
(
CUST_ID NUMBER NOT NULL
, BUS_URL VARCHAR2(50)
, SECTOR_ID CHAR(2)
, LEGAL_STRUCT_ID CHAR(1)
, CONSTRAINT BUSINESS_PK PRIMARY KEY
(
CUST_ID
)
ENABLE
);

ALTER TABLE BUSINESS


ADD CONSTRAINT BUSINESS_FK1 FOREIGN KEY
(
CUST_ID
)
REFERENCES CUSTOMER
(
CUST_ID
)
ENABLE;

ALTER TABLE BUSINESS


ADD CONSTRAINT BUSINESS_FK2 FOREIGN KEY
(
SECTOR_ID
)
REFERENCES BUS_SECTOR
(
SECTOR_ID
)
ENABLE;

ALTER TABLE BUSINESS


ADD CONSTRAINT BUSINESS_FK3 FOREIGN KEY
(
LEGAL_STRUCT_ID
)
REFERENCES LEGAL_STRUCT
(
LEGAL_STRUCT_ID
)
ENABLE;

CREATE TABLE SCHOOL


(
CUST_ID NUMBER NOT NULL
, SCHOOL_LVL_ID CHAR(1)
, SCHOOL_TYPE CHAR(1)
, CONSTRAINT SCHOOL_PK PRIMARY KEY
(
CUST_ID
)
ENABLE
);

ALTER TABLE SCHOOL


ADD CONSTRAINT SCHOOL_FK1 FOREIGN KEY
(
CUST_ID
)
REFERENCES CUSTOMER
(
CUST_ID
)
ENABLE;
ALTER TABLE SCHOOL
ADD CONSTRAINT SCHOOL_FK2 FOREIGN KEY
(
SCHOOL_LVL_ID
)
REFERENCES SCHOOL_LVL
(
SCHOOL_LVL_ID
)
ENABLE;

ALTER TABLE SCHOOL


ADD CONSTRAINT SCHOOL_FK3 FOREIGN KEY
(
SCHOOL_TYPE
)
REFERENCES SCHOOL_TYPE
(
SCHOOL_TYPE
)
ENABLE;
CREATE TABLE SUPPLIER
(
SUPPLIER_ID NUMBER NOT NULL
, SUPPLIER_BUS_NAME VARCHAR2(50)
, SUPPLIER_URL VARCHAR2(50)
, SUPPLIER_EMAIL VARCHAR2(50)
, SUPPLIER_PHONE VARCHAR2(15)
, SUPPLIER_CONTACT_NAME VARCHAR2(50)
, SUPPLIER_CONTACT_PHONE VARCHAR2(15)
, SUPPLIER_CONTACT_EMAIL VARCHAR2(50)
, ADDRESS_ID VARCHAR2(20)
, CONSTRAINT SUPPLIER_PK PRIMARY KEY
(
SUPPLIER_ID
)
ENABLE
);

ALTER TABLE SUPPLIER


ADD CONSTRAINT SUPPLIER_FK1 FOREIGN KEY
(
ADDRESS_ID
)
REFERENCES ADDRESS
(
ADDRESS_ID
)
ENABLE;
CREATE TABLE STAFFS
(
STAFF_ID NUMBER NOT NULL
, STAFF_NAME VARCHAR2(50)
, STAFF_PHONE VARCHAR2(15)
, STAFF_EMAIL VARCHAR2(50)
, STAFF_TFN CHAR(1)
, STAFF_HOURLY_RATE DECIMAL(5,2)
, STAFF_TYPE CHAR(1)
, STAFF_SUPERVISOR NUMBER
, CONSTRAINT STAFFS_PK PRIMARY KEY
(
STAFF_ID
)
ENABLE
);

ALTER TABLE STAFFS


ADD CONSTRAINT STAFFS_FK1 FOREIGN KEY
(
STAFF_TYPE
)
REFERENCES STAFF_TYPE
(
STAFF_TYPE
)
ENABLE;

Das könnte Ihnen auch gefallen