Laporkan Penyalahgunaan

7 Hari Belajar Python - Database [ Bagian 4-Complete]

Posting Komentar

 

Hari 6: Mengakses Database dengan Python



Pada hari keenam ini, kita akan belajar cara mengakses dan mengelola database menggunakan Python. Kita akan fokus pada SQLite, yang merupakan database ringan dan mudah digunakan.

Mengapa SQLite?

SQLite adalah pilihan yang baik untuk belajar karena:

  • Tidak memerlukan server database terpisah.
  • File database SQLite adalah file tunggal yang mudah dibawa-bawa.
  • Didukung oleh pustaka standar Python (sqlite3).

Menggunakan SQLite dengan Python

  1. Menghubungkan ke Database:

    import sqlite3
    # Membuat koneksi ke database (akan membuat file database jika belum ada) conn = sqlite3.connect('example.db') # Membuat cursor untuk mengeksekusi perintah SQL cursor = conn.cursor()
  2. Membuat Tabel:

    cursor.execute('''CREATE TABLE IF NOT EXISTS users
    (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)''')
  3. Menambahkan Data:

    cursor.execute("INSERT INTO users (name, age) VALUES (?, ?)", ('Alice', 30))
    cursor.execute("INSERT INTO users (name, age) VALUES (?, ?)", ('Bob', 25)) # Menyimpan perubahan conn.commit()
  4. Membaca Data:

    cursor.execute("SELECT * FROM users")
    rows = cursor.fetchall() for row in rows: print(row)
  5. Mengupdate Data:

    cursor.execute("UPDATE users SET age = ? WHERE name = ?", (31, 'Alice'))
    conn.commit()
  6. Menghapus Data:

    cursor.execute("DELETE FROM users WHERE name = ?", ('Bob',))
    conn.commit()
  7. Menutup Koneksi:

    conn.close()

Latihan

  1. Latihan Membuat dan Mengelola Database:

    • Buat database library.db dan tabel books dengan kolom id, title, dan author.
      import sqlite3
      conn = sqlite3.connect('library.db') cursor = conn.cursor() cursor.execute('''CREATE TABLE IF NOT EXISTS books (id INTEGER PRIMARY KEY, title TEXT, author TEXT)''') conn.commit() conn.close()
  2. Latihan Menambahkan dan Membaca Data:

    • Tambahkan beberapa buku ke tabel books dan baca kembali semua data.

      import sqlite3 conn = sqlite3.connect('library.db') cursor = conn.cursor() cursor.execute("INSERT INTO books (title, author) VALUES (?, ?)", ('1984', 'George Orwell')) cursor.execute("INSERT INTO books (title, author) VALUES (?, ?)", ('To Kill a Mockingbird', 'Harper Lee')) conn.commit() cursor.execute("SELECT * FROM books") rows = cursor.fetchall() for row in rows: print(row) conn.close()
  3. Latihan Mengupdate dan Menghapus Data:

    • Update judul buku dan hapus buku berdasarkan judulnya.
      import sqlite3
      conn = sqlite3.connect('library.db') cursor = conn.cursor() cursor.execute("UPDATE books SET title = ? WHERE title = ?", ('Animal Farm', '1984')) cursor.execute("DELETE FROM books WHERE title = ?", ('To Kill a Mockingbird',)) conn.commit() cursor.execute("SELECT * FROM books") rows = cursor.fetchall() for row in rows: print(row) conn.close()

Hari 7: Membuat Proyek Sederhana

Pada hari ketujuh ini, kita akan menggabungkan semua yang telah dipelajari untuk membuat proyek sederhana: sistem manajemen perpustakaan.

Deskripsi Proyek

  • Sistem ini akan memungkinkan pengguna untuk menambah, membaca, memperbarui, dan menghapus buku dari database.
  • Menggunakan SQLite sebagai database backend.
  • Menyediakan antarmuka pengguna yang sederhana menggunakan terminal.

Langkah-langkah Proyek

  1. Menyiapkan Database:

    import sqlite3
    def create_connection(): return sqlite3.connect('library.db') def create_table(conn): cursor = conn.cursor() cursor.execute('''CREATE TABLE IF NOT EXISTS books (id INTEGER PRIMARY KEY, title TEXT, author TEXT)''') conn.commit() conn = create_connection() create_table(conn) conn.close()
  2. Fungsi CRUD:

    def add_book(conn, title, author):
    cursor = conn.cursor() cursor.execute("INSERT INTO books (title, author) VALUES (?, ?)", (title, author)) conn.commit() def view_books(conn): cursor = conn.cursor() cursor.execute("SELECT * FROM books") rows = cursor.fetchall() return rows def update_book(conn, book_id, new_title, new_author): cursor = conn.cursor() cursor.execute("UPDATE books SET title = ?, author = ? WHERE id = ?", (new_title, new_author, book_id)) conn.commit() def delete_book(conn, book_id): cursor = conn.cursor() cursor.execute("DELETE FROM books WHERE id = ?", (book_id,)) conn.commit()
  3. Antarmuka Pengguna:


    def menu(): print("1. Tambah Buku") print("2. Lihat Buku") print("3. Update Buku") print("4. Hapus Buku") print("5. Keluar") def main(): conn = create_connection() create_table(conn) while True: menu() choice = input("Pilih opsi: ") if choice == '1': title = input("Masukkan judul buku: ") author = input("Masukkan penulis buku: ") add_book(conn, title, author) elif choice == '2': books = view_books(conn) for book in books: print(book) elif choice == '3': book_id = int(input("Masukkan ID buku yang ingin diupdate: ")) new_title = input("Masukkan judul baru: ") new_author = input("Masukkan penulis baru: ") update_book(conn, book_id, new_title, new_author) elif choice == '4': book_id = int(input("Masukkan ID buku yang ingin dihapus: ")) delete_book(conn, book_id) elif choice == '5': break else: print("Pilihan tidak valid. Silakan coba lagi.") conn.close() if __name__ == "__main__": main()

Menguji Proyek

  1. Jalankan skrip dan pilih opsi dari menu untuk menambahkan, melihat, memperbarui, atau menghapus buku.
  2. Pastikan setiap operasi berfungsi dengan benar.

Dengan mengikuti langkah-langkah ini, Anda akan memiliki pemahaman yang lebih baik tentang cara menggabungkan berbagai konsep Python untuk membangun aplikasi yang lebih kompleks.

Itulah rencana belajar 7 hari untuk menguasai dasar-dasar Python dan mengakses database. Semoga sukses dalam perjalanan belajar Python

Terbaru Lebih lama

Related Posts

There is no other posts in this category.

Posting Komentar