广东话寻找SQL插入语句Informix的发现与蟒蛇informixdb INSERT查询正确的语法通过Python informixdb
- 蟒蛇2.6.6
- 蟒蛇INFORMIXDB版本2.5
- 驱动程序名称:IBM Informix- ESQL
- 驱动程序版本:Debian的挤压3.50.FC8
这里的文档 - http://informixdb.sourceforge.net/manual.html#binding-parameters
>>> cursor.execute('INSERT INTO names VALUES(:first,:last,:age)',
... dict(first='some', last='body', age=56))
所以我试图例如
cursor.execute('INSERT INTO transit_auftrag_i VALUES(:auftragskey,:transitkunde,:status)',dict(auftragskey='erII',transitkunde='DMIeLE',status='OK'))
这是我在这个例子中
<class '_informixdb.ProgrammingError'>
('PREPARE', -236, [{'message': 'Insert value list does not match column list', 'sqlstate': '21S01'}])
<class '_informixdb.ProgrammingError'>
('DESCRIBE', -410, [{'message': 'Syntax error or access violation in PREPARE or EXECUTE IMMEDIATE', 'sqlstate': '37000'}])
Segmentation fault
任何暗示什么,我可以尝试请得到什么?
UPDATE:Informix的11.50.xC8
UPDATE
感谢这么远。我现在执行下面的查询,它运行没有错误,但也没有来自光标的消息,并且它不插入任何东西。如果你有一个建议,它会很好。
cursor.execute("INSERT INTO transit_auftrag_i (auftragskey,transitkunde,status) VALUES (:a,:b,:c)", dict(a='A',b='B',c='C'))
似乎我明白了。我需要设置conn.autocommit =真 – groovehunter 2011-12-15 11:27:30