Как добавить столбцы в sqlite3 python?
Я знаю, что это простой, но я не могу заставить его работать! У меня нет проблем с командами insert, update или select, скажем, у меня есть словарь, и я хочу заполнить таблицу именами столбцов в словаре что не так с моей одной строкой, где я добавляю столбец?
##create
con = sqlite3.connect('linksauthor.db')
c = con.cursor()
c.execute('''create table linksauthor (links text)''')
con.commit()
c.close()
##populate author columns
allauthors={'joe':1,'bla':2,'mo':3}
con = sqlite3.connect('linksauthor.db')
c = con.cursor()
for author in allauthors:
print author
print type(author)
c.execute("alter table linksauthor add column '%s' 'float'")%author ##what is wrong here?
con.commit()
c.close()
2 ответов
ваш парень неуместен. Ты наверное имел ввиду это:
c.execute("alter table linksauthor add column '%s' 'float'" % author)
вы также используете строки для имени столбца и имени типа. Sqlite очень прощает, но вы действительно должны использовать двойные кавычки в качестве символа цитирования для идентификаторов.