对不起,这是一个非常新手的问题。当我试图将一个元组传递给一个插入语句时,引号似乎消失了。
line=[0, 1, 3000248, 'G', 'T', 102, 102, 60, 25]
SNPinfo = tuple(line)
curs.execute("""INSERT INTO akr (code, chrID, chrLOC, refBase, conBase, \
consqual, SNPqual, maxMapqual, numbReadBases) \
VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s)""", SNPinfo)
我得到的错误是: 第1行:... axMapqual,numbReadBases)VALUES(0,1,3000248,G,T,102,10 .. psycopg2.ProgrammingError:列“g”不存在
我认为我的插入语句在某处错了。
答案 0 :(得分:0)
您缺少字符串格式的varchars周围的单引号:
curs.execute("""INSERT INTO akr (code, chrID, chrLOC, refBase, conBase, \
consqual, SNPqual, maxMapqual, numbReadBases) \
VALUES (%s,%s,%s,'%s','%s',%s,%s,%s,%s)""", SNPinfo)
这会产生:
INSERT INTO akr (code, chrID, chrLOC, refBase, conBase,
consqual, SNPqual, maxMapqual, numbReadBases)
VALUES (0,1,3000248,'G','T',102,102,60,25)