-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.py
99 lines (82 loc) · 1.6 KB
/
main.py
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
# -*- coding: utf-8 -*-
"""CRUD - pyodbc - Microsoft Access."""
import pathlib
import pyodbc
BASE_DIR = pathlib.Path(__file__).resolve().parent
DB_FILE = BASE_DIR.joinpath('example.accdb')
con = pyodbc.connect(
'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};' f'DBQ={DB_FILE};'
)
# Cursor (DML, DDL, etc).
cur = con.cursor()
# Create.
print('[!] Create [!]')
query = 'INSERT INTO table_name (name, age) VALUES (?, ?);'
cur.execute(
query,
('renato', 35),
)
# Bulk create.
cur.executemany(
query,
(
('maria', 25),
('sandy', 19),
),
)
# Read.
print('\n[!] Read [!]')
cur.execute('SELECT * FROM table_name;')
print(cur.fetchall())
# Where.
query = 'SELECT * FROM table_name WHERE user_id = ?;'
cur.execute(
query,
(1,),
)
print(cur.fetchone())
query = 'SELECT * FROM table_name WHERE age > ?;'
cur.execute(
query,
(20,),
)
print(cur.fetchall())
# Update.
print('\n[!] Update [!]')
query = 'SELECT * FROM table_name WHERE user_id = ?;'
cur.execute(
query,
(1,),
)
print(cur.fetchone())
query = 'UPDATE table_name SET name = ? WHERE user_id = ?;'
cur.execute(
query,
('joão', 1),
)
query = 'SELECT * FROM table_name WHERE user_id = ?;'
cur.execute(
query,
(1,),
)
print(cur.fetchone())
# Delete.
print('\n[!] Delete [!]')
query = 'SELECT * FROM table_name WHERE user_id = ?;'
cur.execute(
query,
(1,),
)
print(cur.fetchone())
query = 'DELETE FROM table_name WHERE user_id = ?;'
cur.execute(
query,
(1,),
)
query = 'SELECT * FROM table_name WHERE user_id = ?;'
cur.execute(
query,
(1,),
)
print(cur.fetchone())
con.close()