Created
October 30, 2024 16:29
-
-
Save baharsah/aeb2a487fb9302a6005dd7eb7c250ea1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import sqlite3 | |
# Membuat koneksi ke database | |
conn = sqlite3.connect('toko.db') | |
cursor = conn.cursor() | |
# Membuat tabel (migration) | |
cursor.execute(''' | |
CREATE TABLE IF NOT EXISTS barang ( | |
id INTEGER PRIMARY KEY AUTOINCREMENT, | |
nama TEXT, | |
harga REAL, | |
stok INTEGER | |
) | |
''') | |
# Fungsi untuk menampilkan semua data barang | |
def tampilkan_semua_barang(): | |
cursor.execute('SELECT * FROM barang') | |
rows = cursor.fetchall() | |
for row in rows: | |
print(row) | |
# Fungsi untuk menambahkan data barang | |
def tambah_barang(nama, harga, stok): | |
cursor.execute('INSERT INTO barang (nama, harga, stok) VALUES (?, ?, ?)', (nama, harga, stok)) | |
conn.commit() | |
print("Data barang berhasil ditambahkan.") | |
# Fungsi untuk mencari data barang berdasarkan nama | |
def cari_barang(nama): | |
cursor.execute('SELECT * FROM barang WHERE nama LIKE ?', ('%' + nama + '%',)) | |
rows = cursor.fetchall() | |
if rows: | |
for row in rows: | |
print(row) | |
else: | |
print("Barang tidak ditemukan.") | |
# Fungsi untuk menghapus data barang berdasarkan ID | |
def hapus_barang(id): | |
cursor.execute('DELETE FROM barang WHERE id = ?', (id,)) | |
conn.commit() | |
print("Data barang berhasil dihapus.") | |
# Fungsi untuk mengubah data barang berdasarkan ID | |
def ubah_barang(id, nama, harga, stok): | |
cursor.execute('UPDATE barang SET nama = ?, harga = ?, stok = ? WHERE id = ?', (nama, harga, stok, id)) | |
conn.commit() | |
print("Data barang berhasil diubah.") | |
# Menu utama | |
while True: | |
print("\nMenu:") | |
print("1. Tampilkan semua barang") | |
print("2. Tambah barang") | |
print("3. Cari barang") | |
print("4. Hapus barang") | |
print("5. Ubah barang") | |
print("6. Keluar") | |
pilihan = input("Pilih menu: ") | |
if pilihan == '1': | |
tampilkan_semua_barang() | |
elif pilihan == '2': | |
nama = input("Masukkan nama barang: ") | |
harga = float(input("Masukkan harga barang: ")) | |
stok = int(input("Masukkan stok barang: ")) | |
tambah_barang(nama, harga, stok) | |
elif pilihan == '3': | |
nama = input("Masukkan nama barang yang ingin dicari: ") | |
cari_barang(nama) | |
elif pilihan == '4': | |
id = int(input("Masukkan ID barang yang ingin dihapus: ")) | |
hapus_barang(id) | |
elif pilihan == '5': | |
id = int(input("Masukkan ID barang yang ingin diubah: ")) | |
nama = input("Masukkan nama barang baru: ") | |
harga = float(input("Masukkan harga barang baru: ")) | |
stok = int(input("Masukkan stok barang baru: ")) | |
ubah_barang(id, nama, harga, stok) | |
elif pilihan == '6': | |
break | |
else: | |
print("Pilihan tidak valid.") | |
# Tutup koneksi | |
conn.close() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment