-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathapplication.py
More file actions
48 lines (39 loc) · 1.84 KB
/
application.py
File metadata and controls
48 lines (39 loc) · 1.84 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
from sqlalchemy import create_engine
from sqlalchemy.exc import IntegrityError, OperationalError
sql_statements = """
CREATE DATABASE IF NOT EXISTS `blog`;
CREATE TABLE IF NOT EXISTS `blog`.`users` (
`id` int NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL,
`email` varchar(50) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username_UNIQUE` (`username`),
UNIQUE KEY `email_UNIQUE` (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
INSERT INTO `blog`.`users` (username, email) VALUES ('john_doe', 'john@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('jane_smith', 'jane@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('alex_wong', 'alex@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('sarah_jones', 'sarah@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('michael_brown', 'michael@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('emily_rodriguez', 'emily@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('david_li', 'david@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('lisa_jackson', 'lisa@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('ryan_smith', 'ryan@example.com');
INSERT INTO `blog`.`users` (username, email) VALUES ('jessica_adams', 'jessica@example.com');
"""
def main():
login, password = "root", "qwerty"
engine = create_engine(
f"mysql+pymysql://{login}:{password}@localhost:3306"
)
with engine.connect() as connection:
for sql in sql_statements.split(";"):
try:
connection.execute(sql)
except (IntegrityError, OperationalError):
pass
result = engine.execute("SELECT * FROM blog.users")
for row in result:
print(row)
if __name__ == "__main__":
main()