I know this is simple but I can't get it working! I have no probs with insert,update or select commands, Lets say I have a dictionary and I want to populate a table with the column names in the dictionary what is wrong with my one line where I add a column?
##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()
Your paren is misplaced. You probably meant this:
c.execute("alter table linksauthor add column '%s' 'float'" % author)
You are also using strings for the column name and type name. Sqlite is very forgiving, but you really should be using double-quotes as the quoting character for identifiers.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.