-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTables.sql
100 lines (88 loc) · 2.43 KB
/
Tables.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
DROP TABLE Payment;
DROP TABLE Transaction1;
DROP TABLE Store;
DROP TABLE Sight_account;
DROP TABLE Bank_account;
DROP TABLE Ownership1;
DROP TABLE Account;
DROP TABLE Card1;
DROP TABLE Customer;
DROP TABLE Region;
CREATE TABLE Region
(region_code CHAR(5),
name CHAR(15),
population1 INTEGER,
average_income REAL,
PRIMARY KEY (region_code))
CREATE TABLE Customer
(customer_id INTEGER,
name CHAR(11),
surname CHAR(13),
customer_address CHAR(35),
vap_number CHAR(10),
phone_number CHAR(12),
geo_id CHAR(5),
PRIMARY KEY (customer_id),
FOREIGN KEY (geo_id) REFERENCES Region(region_code)
ON DELETE CASCADE)
CREATE TABLE Card1
(card_number INTEGER,
date_of_issue DATE,
date_of_expirsy DATE,
balance REAL,
rate REAL,
limit REAL,
owner1 INTEGER,
PRIMARY KEY (card_number),
FOREIGN KEY (owner1) REFERENCES Customer(customer_id))
CREATE TABLE Account
(account_number INTEGER,
balance REAL,
card_number INTEGER,
PRIMARY KEY (account_number),
FOREIGN KEY (card_number) REFERENCES Card1(card_number)
ON DELETE CASCADE)
CREATE TABLE Ownership1
(customer_id1 INTEGER,
account_number1 INTEGER,
FOREIGN KEY (customer_id1) REFERENCES Customer(customer_id) ON DELETE CASCADE,
FOREIGN KEY (account_number1) REFERENCES Account(account_number) ON DELETE CASCADE)
CREATE TABLE Bank_account
(account_number INTEGER,
interest_rate REAL,
PRIMARY KEY (account_number),
FOREIGN KEY (account_number) REFERENCES Account(account_number)
ON DELETE CASCADE)
CREATE TABLE Sight_account
(account_number INTEGER,
overdraft_amount REAL,
PRIMARY KEY (account_number),
FOREIGN KEY (account_number) REFERENCES Account(account_number)
ON DELETE CASCADE)
CREATE TABLE Store
(store_code INTEGER,
name CHAR(11),
service_number INTEGER,
region_code CHAR(5),
PRIMARY KEY (store_code),
FOREIGN KEY (region_code) REFERENCES Region(region_code)
ON DELETE CASCADE)
CREATE TABLE Transaction1
(transaction_code INTEGER,
bank_code INTEGER,
date1 DATE,
hour1 TIME,
charge REAL,
card_number INTEGER,
store_code INTEGER,
PRIMARY KEY (transaction_code),
FOREIGN KEY (card_number) REFERENCES Card1(card_number) ON DELETE CASCADE,
FOREIGN KEY (store_code) REFERENCES Store(store_code) ON DELETE CASCADE)
CREATE TABLE Payment
(customer_number INTEGER,
date1 DATE,
payment_amount REAL,
customer_id INTEGER,
PRIMARY KEY (customer_number, customer_id),
FOREIGN KEY (customer_id) REFERENCES Customer(customer_id)
ON DELETE CASCADE)