-
Notifications
You must be signed in to change notification settings - Fork 0
/
Aplikasi Database Python.py
129 lines (107 loc) · 3.2 KB
/
Aplikasi Database Python.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
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
import mysql.connector
import os
db = mysql.connector.connect(
host="localhost",
user="root",
passwd="Bijionta7",
database="belajarquery",
auth_plugin='mysql_native_password'
)
def check_connect():
if db.is_connected():
print("Berhasil terhubung ke database")
def create_db_table(db):
cursor = db.cursor()
sql = """CREATE TABLE customers (
customer_id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255),
address Varchar(255)
)
"""
cursor.execute(sql)
def insert_data(db):
name = input("Masukan nama: ")
address = input("Masukan alamat: ")
val = (name, address)
cursor = db.cursor()
sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
cursor.execute(sql, val)
db.commit()
print("{} data berhasil disimpan".format(cursor.rowcount))
def show_data(db):
cursor = db.cursor()
sql = "SELECT * FROM customers"
cursor.execute(sql)
results = cursor.fetchall()
if cursor.rowcount < 0:
print("Tidak ada data")
else:
print("----------------------")
print("| Id | Nama | Alamat |")
print("----------------------")
for data in results:
print("| {0} | {1} | {2} |".format(data[0],data[1],data[2]))
def update_data(db):
cursor = db.cursor()
show_data(db)
customer_id = input("pilih id customer> ")
name = input("Nama baru: ")
address = input("Alamat baru: ")
sql = "UPDATE customers SET name=%s, address=%s WHERE customer_id=%s"
val = (name, address, customer_id)
cursor.execute(sql, val)
db.commit()
print("{} data berhasil diubah".format(cursor.rowcount))
def delete_data(db):
cursor = db.cursor()
show_data(db)
customer_id = input("pilih id customer> ")
sql = "DELETE FROM customers WHERE customer_id=%s"
val = (customer_id,)
cursor.execute(sql, val)
db.commit()
print("{} data berhasil dihapus".format(cursor.rowcount))
def search_data(db):
cursor = db.cursor()
keyword = input("Kata kunci: ")
sql = "SELECT * FROM customers WHERE name LIKE %s OR address LIKE %s"
val = ("%{}%".format(keyword), "%{}%".format(keyword))
cursor.execute(sql, val)
results = cursor.fetchall()
if cursor.rowcount < 0:
print("Tidak ada data")
else:
for data in results:
print(data)
def show_menu(db):
print("=== APLIKASI DATABASE PYTHON ===")
print("1. Insert Data")
print("2. Tampilkan Data")
print("3. Update Data")
print("4. Hapus Data")
print("5. Cari Data")
print("0. Keluar")
print("------------------")
menu = input("Pilih menu> ")
# clear screen
os.system("cls")
if menu == "1":
insert_data(db)
elif menu == "2":
show_data(db)
elif menu == "3":
update_data(db)
elif menu == "4":
delete_data(db)
elif menu == "5":
search_data(db)
elif menu == "0":
exit()
else:
print("Menu salah!")
if __name__ == "__main__":
# check_connect()
# create_db_table(db)
while (True):
show_menu(db)
print()