Поле столбца AUTOINCREMENT запрашивает входное значение - PullRequest
0 голосов
/ 23 ноября 2018

Я создал базу данных с автоинкрементным полем:

filecur.execute("CREATE TABLE IF NOT EXISTS File_Data (_FID INTEGER PRIMARY KEY AUTOINCREMENT, UID INTEGER(1000000), FileName varchar2 (15), Date_ varchar2 (15))")
filecur.execute("insert into File_Data values (?, ?, ?)", (uid, filename, today))

Однако, когда я пытаюсь вставить значения в эту таблицу, я получаю сообщение об ошибке, которое говорит, что я указал только 3 значения втаблица с 4 полями.Разве автоинкремент не должен работать сам по себе или я что-то упустил?Любая помощь будет оценена, спасибо!

1 Ответ

0 голосов
/ 23 ноября 2018

Вы должны указать, какие столбцы вы вставляете, например:

filecur.execute("insert into File_Data(UID, FileName, Date_) values(?, ?, ?)",
                (uid, filename, today))

Обратите внимание, что может явно вставить поле автоинкремента, например:

filecur.execute("insert into File_Data(FID_, UID, FileName, Date_) values (?, ?, ?, ?)",
                (fid, uid, filename, today))

Но обычно вы бы этого не делали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...