Table Name | Description |
---|---|
ACCOUNTS | Contains information about all accounts in the bank |
CHEQUEBOOKS | Contains information about cheque books issued to accounts. |
AVA_CHEQUEBOOKS | Contains information about all available cheque books. |
TRANS | Stores information about all transactions. |
The following is the script to create these four tables.
Use the following procedure to create tables using this script.
SQL>START c:\bank\banktables.sql
Click on Insert Data to see the script used to insert data after tables are created.
REM SCRIPT TO CREATE TABLES OF BANK APP. REM ********* DROP ALL TABLES ************* DROP TABLE TRANS CASCADE CONSTRAINTS; DROP TABLE CHEQUEBOOKS CASCADE CONSTRAINT; DROP TABLE AVA_CHEQUEBOOKS CASCADE CONSTRAINT; DROP TABLE ACCOUNTS CASCADE CONSTRAINT; REM ****** CREATE TABLES. MOST INDEPENDENT TABLES FIRST **** REM ********* ACCOUNTS **************** CREATE TABLE ACCOUNTS ( ACNO NUMBER(5) CONSTRAINT ACCOUNTS_PK PRIMARY KEY, NAME VARCHAR2(20) CONSTRAINT ACCOUNTS_NAME_NN NOT NULL, DO DATE, ATYPE CHAR(1) CONSTRAINT ACCOUNTS_ATYPE_CHK CHECK ( ATYPE IN ('S','C')), CURBAL NUMBER(10,2), CF CHAR(1) DEFAULT 'N' CONSTRAINT ACCOUNTS_CF_CHK CHECK ( CF IN ('Y','N')) ); REM ********* CHEQUEBOOKS ********** CREATE TABLE CHEQUEBOOKS ( ACNO NUMBER(5) CONSTRAINT CHEQUEBOOKS_ACNO_FK REFERENCES ACCOUNTS(ACNO), CBNO NUMBER(5) CONSTRAINT CHEQUEBOOKS_PK PRIMARY KEY, DI DATE, SCNO NUMBER(5), ECNO NUMBER(5), CONSTRAINT CHEQUEBOOKS_SCNO_ECNO_CHK CHECK ( SCNO <= ECNO) ); REM ********* AVA_CHEQUEBOOKS ********** CREATE TABLE AVA_CHEQUEBOOKS (CBNO NUMBER(5) CONSTRAINT AVA_CHEQUEBOOKS_PK PRIMARY KEY, SCNO NUMBER(5), ECNO NUMBER(5), CONSTRAINT AVA_CHEQUEBOOKS_SCNO_ECNO_CHK CHECK ( SCNO <= ECNO) ); REM ********* TRANS ********** CREATE TABLE TRANS (TNO NUMBER(10) CONSTRAINT TRANS_PK PRIMARY KEY, ACNO NUMBER(5) CONSTRAINT TRANS_ACNO_FK REFERENCES ACCOUNTS(ACNO), DT DATE, TTYPE CHAR(1) CONSTRAINT TRANS_TTYPE_CHK CHECK ( TTYPE IN ('D','W')), TAMT NUMBER(10,2), CQNO NUMBER(10), CQBANK VARCHAR2(20), CQACNO NUMBER(5), CQTO VARCHAR2(20) );
REM ************ SCRIPT TO INSERT DATA INTO BANK TABLES ******* REM ************ DELETE ALL ROWS FROM ALL TABLES ************** DELETE FROM TRANS; DELETE FROM CHEQUEBOOKS; DELETE FROM AVA_CHEQUEBOOKS; DELETE FROM ACCOUNTS; REM ************ INSERT INTO AVA_CHEQUEBOOKS ************ INSERT INTO AVA_CHEQUEBOOKS VALUES(1020,50001,50025); INSERT INTO AVA_CHEQUEBOOKS VALUES(1021,50026,50050); INSERT INTO AVA_CHEQUEBOOKS VALUES(1022,50051,50075); INSERT INTO AVA_CHEQUEBOOKS VALUES(1023,50076,50100); INSERT INTO AVA_CHEQUEBOOKS VALUES(1024,50101,50125); INSERT INTO AVA_CHEQUEBOOKS VALUES(1025,50126,50150); REM *********** INSERT INTO ACCOUNTS ********** INSERT INTO ACCOUNTS VALUES(1,'RONALDO','14-MAR-2002','S',10000,'Y'); INSERT INTO ACCOUNTS VALUES(2,'DENILSON','16-MAR-2002', 'S',5000,'Y'); INSERT INTO ACCOUNTS VALUES(3,'RIVALDO','20-APR-2002','C',20000,'Y'); INSERT INTO ACCOUNTS VALUES(4,'ROBERTO CARLOS','12-MAY-2002', 'S',5000,'N'); INSERT INTO ACCOUNTS VALUES(5,'CAFU','14-MAR-2002', 'S',4000,'N'); INSERT INTO ACCOUNTS VALUES(6,'EDILSON','2-JUN-2002', 'C',15000,'Y'); INSERT INTO ACCOUNTS VALUES(7,'LENARDO','3-JUN-2002', 'S',4500,'N'); INSERT INTO ACCOUNTS VALUES(8,'RONALDINHO','3-JUN-2002', 'S',5000,'N'); REM ****** CHEQUEBOOKS ******** INSERT INTO CHEQUEBOOKS VALUES(2,1011,'19-MAR-2002', 45026,45050); INSERT INTO CHEQUEBOOKS VALUES(1,1012,'1-APR-2002', 45051,45075); INSERT INTO CHEQUEBOOKS VALUES(3,1013,'5-MAY-2002', 45076,45100); INSERT INTO CHEQUEBOOKS VALUES(6,1014,'2-JUN-2002', 45101,45125); INSERT INTO CHEQUEBOOKS VALUES(1,1015,'2-JUN-2002', 45126,45150); REM ************ TRANS ************ INSERT INTO TRANS VALUES(1,2,'2-MAY-2002','D',1000,NULL, NULL,NULL,NULL); INSERT INTO TRANS VALUES(2,1,'2-MAY-2002','D',5000,7474,'GTB',28282,NULL); INSERT INTO TRANS VALUES(3,3,'6-MAY-2002','W',5500,45077, NULL,NULL,'FIGO'); INSERT INTO TRANS VALUES(4,5,'15-MAY-2002','W',3000,NULL, NULL,NULL,NULL); INSERT INTO TRANS VALUES(5,4,'20-MAY-2002','D',5000,NULL, NULL,NULL,NULL); INSERT INTO TRANS VALUES(6,1,'22-MAY-2002','W',1000,NULL, NULL,NULL,NULL); INSERT INTO TRANS VALUES(7,2,'20-MAY-2002','D',1000,32838,'ICICI',232,NULL); INSERT INTO TRANS VALUES(8,6,'22-MAY-2002','D',1500,12333,'SBI',1222,NULL); INSERT INTO TRANS VALUES(9,1,'23-MAY-2002','D',10000,NULL,NULL,NULL,NULL); INSERT INTO TRANS VALUES(10,7,'25-MAY-2002','D',2000,NULL,NULL,NULL,NULL); INSERT INTO TRANS VALUES(11,7,'25-MAY-2002','W',3000,NULL,NULL,NULL,NULL); INSERT INTO TRANS VALUES(12,4,'26-MAY-2002','W',3500,NULL,NULL,NULL,NULL); INSERT INTO TRANS VALUES(13,3,'26-MAY-2002','W',3000,45090,NULL,NULL,'ZIDANE'); INSERT INTO TRANS VALUES(14,8,'1-JUN-2002','D',20000,37333,'AB',111,NULL); INSERT INTO TRANS VALUES(15,8,'3-JUN-2002','W',7000,NULL,NULL,NULL,NULL); COMMIT;