Python sqlite3 создать синтаксическую ошибку таблицы - PullRequest
0 голосов
/ 03 августа 2011

Всякий раз, когда я пытаюсь создать таблицу, используя python и sqlite3, она выдает мне следующую ошибку:

Traceback (most recent call last)
File "directory.py", line 14, in <module>
'Children' TEXT, 'Other' TEXT, 'Masul' TEXT);''')
sqlite3.OperationalError: near ")": syntax error

Я пытаюсь создать таблицу:

conn.execute('''create table Jamaat
            (id integer primary key,
            Email TEXT, 
            LastName TEXT, 
            Address1 TEXT, 
            Apt TEXT,
             Address2 TEXT, 
             City TEXT,
              State TEXT,
               Zip TEXT, 
             HomePhone TEXT,
              FaxNumber TEXT,
               Primary TEXT,
                Spouse TEXT,
             Children TEXT,
              Other TEXT,
               Masul TEXT);''')
conn.commit()          

Я использую python 2.7 и пытаюсь импортировать электронную таблицу csv в sqlite3

Заранее спасибо EDIT: я пробовал код без запятой, и он все еще не работает ...

Ответы [ 3 ]

6 голосов
/ 03 августа 2011

Часто, когда вы получаете такого рода ошибки, это происходит потому, что вы используете ключевые слова в качестве имен столбцов (или таблиц).

Я вижу, что у вас есть столбец с именем primary.
Вы захотитеставить галочки вокруг него или переименовывать его, потому что это ключевое слово в SQLite ;например:

...
`Primary` TEXT,
...
1 голос
/ 03 августа 2011

В вашем образце отсутствует ), и, поскольку ошибка в вашем SQL, вы, вероятно, должны включить фактический оператор execute, а не ....

Но я бы сказал, что ваша ошибка - конечная, в конце списка ваших столбцов.

1 голос
/ 03 августа 2011

У вас есть завершающий символ "," перед закрывающей скобкой.

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