background image

 

 

45 

 

Πίνακας questions: Αποθηκεύει τις ερωτήσεις που τίθενται από το LLM στον χρήστη και τις 

αντίστοιχες  απαντήσεις  τους.  Κάθε  ερώτηση  συνδέεται  με  ένα  συγκεκριμένο  θέμα, 

διευκολύνοντας την ανάκτηση σχετικών δεδομένων ανάλογα με το επιλεγμένο θέμα από τον 

χρήστη.  

 

    cursor.execute(''' 

        CREATE TABLE IF NOT EXISTS questions ( 
            id INTEGER PRIMARY KEY AUTOINCREMENT, 

            topic TEXT NOT NULL, 
            question TEXT NOT NULL, 
            answer TEXT NOT NULL)''') 

 

Πίνακας users: Αποθηκεύει τα δεδομένα των χρηστών, όπως το όνομα και την ηλικία τους. 

Οι πληροφορίες αυτές χρησιμοποιούνται για να εξατομικευθεί η εμπειρία του χρήστη, όπως η 

επιλογή της δυσκολίας των ερωτήσεων. 

 

    cursor.execute(''' 

        CREATE TABLE IF NOT EXISTS users ( 
            id INTEGER PRIMARY KEY AUTOINCREMENT, 
            user_name TEXT NOT NULL, 

            user_age INTEGER NOT NULL 
        ) 
    ''') 

 

Πίνακας user_topics: Διαχειρίζεται τη σχέση μεταξύ χρηστών και θεμάτων, καθώς και τον 

αριθμό  των  ερωτήσεων  που  επιθυμεί  ο  χρήστης  να  λάβει  για  κάθε  θέμα.  Αυτός  ο  πίνακας 

εξασφαλίζει  την  εξατομίκευση  της  εμπειρίας  του  παίκτη,  επιτρέποντας  στο  σύστημα  να 

προσαρμόζει τις ερωτήσεις που προτείνονται ανάλογα με τις προτιμήσεις του. 

 

    cursor.execute(''' 

        CREATE TABLE IF NOT EXISTS user_topics ( 
            user_id INTEGER, 
            topic TEXT, 
            num_questions INTEGER, 

            initial_num_questions INTEGER, 
            PRIMARY KEY (user_id, topic), 
            FOREIGN KEY (user_id) REFERENCES users(id), 
            FOREIGN KEY (topic) REFERENCES topics(topic_name) 

        ) 
    ''')