@smokedevil666

Как создать таблицу в sqlite с датой, которая ссылается на юзера?

Как это реализовать? Пробую так, но не получается:

cur = conn.cursor()
                cur.execute('''CREATE TABLE IF NOT EXISTS STAFF( id INTEGER PRIMARY KEY AUTOINCREMENT
                , FIO TEXT NOT NULL);''')
                # вставляем данные сотрудника
                sqlite_insert_with_name = """INSERT INTO 'STAFF'
                                  ('FIO')
                                  VALUES (?);"""

                name_tuple = (name,)
                cur.execute(sqlite_insert_with_name, name_tuple)
                conn.commit()
                cur.execute('''CREATE TABLE IF NOT EXISTS STAFF_DATE( id INTEGER PRIMARY KEY FIO
                , DATE timestamp NOT NULL);''')

                sqlite_insert_with_data = """INSERT INTO 'STAFF_DATE'
                                  ('DATE')
                                  VALUES (?);"""
                data_tuple = (f"{time.strftime('%Y-%m-%d', time.localtime())}",)
                cur.execute(sqlite_insert_with_data, data_tuple)
                conn.commit()
                cur.close()
  • Вопрос задан
  • 102 просмотра
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Дата ни на что ссылаться на может. Дата - это просто дата.
Для того, чтобы строка таблицы была связана с записью из второй таблицы, необходимо в первой таблице добавить поле, которое будет содержать идентификатор строки второй таблицы.
CREATE TABLE IF NOT EXISTS STAFF_DATE(
  id INTEGER PRIMARY KEY FIO,
  DATE timestamp NOT NULL,
  staff_id INTEGER,
  FOREIGN KEY(staff_id) REFERENCES STAFF(id)
);
Ну и, соответственно, записывать в это поле id сотрудника, для которого задаётся дата.
https://medium.com/@emekadc/how-to-implement-one-t...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
17 мая 2024, в 11:52
2500 руб./за проект
17 мая 2024, в 11:43
5000 руб./за проект
17 мая 2024, в 11:41
15000 руб./за проект