2016-11-24 4 views
1

Я использую sqlite3 в python3.SQLITE create statement error

Есть что-то не так в моем заявлении CREATE, показанном ниже? c.execute("CREATE TABLE IF NOT EXISTS transaction(no INTEGER PRIMARY KEY AUTOINCREMENT, ic NONE, borrow INTEGER, timeIn NONE, timeOut NONE")

Сообщение об ошибке: sqlite3.OperationalError: near "transaction" : syntax error

ответ

1

"сделка" является зарезервированным словом в SQL. Вы должны использовать quote, если хотите его использовать.

... `transaction` (... 
+1

О, я вижу. Спасибо! – gcxh

1

Как Ignacio сказал, transaction должны быть указаны и есть недостающий правая скобка.
запрос должен выглядеть так:

c.execute("CREATE TABLE IF NOT EXISTS 'transaction'(no INTEGER PRIMARY KEY AUTOINCREMENT, 
                ic NONE, borrow INTEGER, 
                timeIn NONE, 
                timeOut NONE)")