-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.py
More file actions
140 lines (127 loc) · 3.44 KB
/
Copy pathscript.py
File metadata and controls
140 lines (127 loc) · 3.44 KB
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
import mysql.connector
import pandas as pd
# db = mysql.connector.connect(
# host="sql6.freesqldatabase.com",
# user="sql6510904",
# password="HE7SwbFPZT"
# )
db = mysql.connector.connect(
host="localhost",
user="admin",
password="admin"
)
cur = db.cursor()
cur.execute('DROP DATABASE IF EXISTS CBE_STOCKS')
# database creation
cur.execute("CREATE DATABASE IF NOT EXISTS CBE_STOCKS")
# cur.execute("USE sql6510904")
cur.execute("USE CBE_STOCKS")
# table creation
s = ['''CREATE TABLE receivedvouchers (
ID INT NOT NULL AUTO_INCREMENT,
RVNo INT NOT NULL,
RVYear INT NOT NULL,
Supplier varchar(255) NOT NULL,
SNo INT NOT NULL,
Scheme INT NOT NULL,
DateOfReceival DATE NOT NULL,
Approval INT NOT NULL DEFAULT 0,
ApprovedBy INT,
ApprovalDate DATETIME DEFAULT NULL,
DateOfCreation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID)
);''',
'''
CREATE TABLE ivitems (
ivID INT NOT NULL,
ivItemID INT NOT NULL,
ivQtyReq INT NOT NULL,
ivQtyPassed INT NOT NULL,
PRIMARY KEY (ivID, ivItemID)
);
''',
'''
CREATE TABLE items (
ID INT NOT NULL AUTO_INCREMENT,
CategoryID INT NOT NULL,
Name varchar(255) NOT NULL,
Quantity INT NOT NULL,
Life INT NOT NULL DEFAULT 0,
DateOfCreation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID)
);''',
'''
CREATE TABLE categories (
ID INT NOT NULL AUTO_INCREMENT,
Name varchar(255) NOT NULL,
DateOfCreation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID)
);''',
'''
CREATE TABLE users (
ID INT NOT NULL AUTO_INCREMENT,
Name varchar(255) NOT NULL,
Username varchar(255) NOT NULL,
Password varchar(255) NOT NULL,
AuthType INT NOT NULL,
DateOfCreation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID)
);''',
'''
CREATE TABLE issuedvouchers (
ID INT NOT NULL AUTO_INCREMENT,
IVNo INT NOT NULL,
IVYear INT NOT NULL,
Receiver INT NOT NULL,
SNo INT NOT NULL,
Scheme INT NOT NULL,
DateOfReceival DATE NOT NULL,
Approval INT NOT NULL DEFAULT 0,
ApprovedBy INT,
ApprovalDate DATETIME DEFAULT NULL,
DateOfCreation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID)
);''',
'''
CREATE TABLE rvitems (
rvID INT NOT NULL,
rvItemID INT NOT NULL,
rvItemQty INT NOT NULL,
rvItemRef varchar(255) NOT NULL,
PRIMARY KEY (rvID, rvItemID)
);''',
'''
CREATE TABLE stations (
ID INT NOT NULL AUTO_INCREMENT,
Name varchar(255) NOT NULL,
DateOfCreation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID)
);''',
'''
CREATE TABLE schemes (
ID INT NOT NULL AUTO_INCREMENT,
Name varchar(255) NOT NULL,
DateOfCreation TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (ID)
);''',
'''
ALTER TABLE receivedvouchers ADD FOREIGN KEY (ApprovedBy) REFERENCES users(ID);''',
'''
ALTER TABLE ivitems ADD FOREIGN KEY (ivID) REFERENCES issuedvouchers(ID);''',
'''
ALTER TABLE ivitems ADD FOREIGN KEY (ivItemID) REFERENCES items(ID);''',
'''
ALTER TABLE items ADD FOREIGN KEY (CategoryID) REFERENCES categories(ID);''',
'''
ALTER TABLE issuedvouchers ADD FOREIGN KEY (Receiver) REFERENCES stations(ID);''',
'''
ALTER TABLE issuedvouchers ADD FOREIGN KEY (Scheme) REFERENCES schemes(ID);''',
'''
ALTER TABLE issuedvouchers ADD FOREIGN KEY (ApprovedBy) REFERENCES users(ID);''',
'''
ALTER TABLE rvitems ADD FOREIGN KEY (rvID) REFERENCES receivedvouchers(ID);''',
'''
ALTER TABLE rvitems ADD FOREIGN KEY (rvItemID) REFERENCES items(ID);'''
]
for i in s:
cur.execute(i)