ΣΑΕΚ Γιαννιτσών

Αλέξανδρος Μοσκοφίδης

28/04/2026 - Μάθημα 8

- Δημοσιεύτηκε στο Γλώσσα Προγραμματισμού IV από

[0] - Live coding 28/04/2026

[1] - Το βιβλίο του μαθήματος μας

Κάνε κλικ στην παρακάτω εικόνα

[2] - Νέα εφαρμογή δημιουργίας GUI

Δημιουργία του claude.ai - διαθέσιμο εδώ

[3] - Ατομική εργασία

Θα πρέπει να φτιάξεις μια εφαρμογή παραγγελίας το γραφικό περιβάλλον (GUI) της οποίας να μοιάζει με την παρακάτω εικόνα:

atomiki_ergasia.png

Αναλυτικές προδιαγραφές εδώ

[4] - Βάσεις δεδομένων σε αρχείο (sqlite)

Η εφαρμογή DB Browser for SQLite είναι διαθέσιμη για λήψη εδώ

[5] - Δημιουργία ΒΔ στην εφαρμογή DB Browser for SQLite

Να φτιάξετε μια ΒΔ με όνομα hardware.db

Θα περιλαμβάνει τους 2 παρακάτω πίνακες:

(α) Πίνακας με όνομα stock που έχει τις 3 παρακάτω στήλες:

  (α1) **id** τύπου **integer** και **AI** (auto-increment)

 (α2) **description** τύπου **text**

 (α3) **price** τύπου ****numeric**

(β) Πίνακας με όνομα suppliers που έχει τις 3 παρακάτω στήλες:

  (a1) **id** τύπου **integer** και **AI** (auto-increment)

 (a2) **name** τύπου **text**

 (a3) **telephone** τύπου ****text**

Προσθέστε τις παρακάτω εγγραφές στον πίνακα stock

id description price
1 i5-11200 99.99
2 Ryzen 7 8200x 166.77
3 RAM 16GB DDR5 199.99

Προσθέστε τις παρακάτω εγγραφές στον πίνακα suppliers

id name telephone
1 Quest Tech 210 999 9999
2 SAEK Giannitswn 23820 89898

[6] - Σύνδεση ΒΔ sqlite με python

Θα χρησιμοποιήσουμε τον παρακάτω κώδικα:

import os
import sqlite3

BASE_DIR = os.path.dirname(os.path.abspath(__file__))
db_path = os.path.join(BASE_DIR, "hardware.db")

# 1. Σύνδεση στη βάση (αν δεν υπάρχει, δημιουργείται το αρχείο 'example.db')
connection = sqlite3.connect(db_path)
cursor = connection.cursor()

# 2. Το SELECT σου
cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()  # Επιστρέφει μια λίστα από tuples

for row in rows:
    print(f"ID: {row[0]}, Όνομα: {row[1]}")

# 3. Κλείσιμο σύνδεσης
connection.close()