没有驱动程序支持的Python SQL清理

2024-03-29 15:24:01 发布

您现在位置:Python中文网/ 问答频道 /正文

在将SQL输入传递给光标.执行python中的命令?我知道你应该可以做一个如下的构造:

cursor.execute("insert into Attendees values (?, ?, ?)", (name, seminar, paid) )

为了正确地做到这一点,但它不能与我的ODBC驱动程序(4dv11)和pyodbc一起工作。在

更具体地说,我尝试使用上述格式编写一个INSERT语句。当我运行代码时,会插入一条记录,但结果记录中只填充数字变量-字符串为空。如果我将ODBC驱动程序(显然还有数据库)切换到pqodbc,并且Postgresql数据库的设置完全相同(至少对于我要插入的字段),同样的代码运行得非常完美。这意味着问题出在4D驱动程序中,而不是Python中。也就是说,4D驱动程序不太可能很快被修复,所以我正在寻找其他的解决办法。有什么建议吗?谢谢


Tags: name命令数据库executesql记录驱动程序cursor
1条回答
网友
1楼 · 发布于 2024-03-29 15:24:01

不幸的是,由于有很多类似SQL的方言,所以没有一种一致的方法来实现卫生处理。这就是为什么一个好司机应该出口一个消毒设施。在

Python有一组很好的字符串处理函数,因此按照问题注释的建议,修复您的特定情况应该非常容易。在

在实现这一点时,您可以做的一件好事是查看某个驱动程序的转义系统:它可能包含一些有用的技巧;-)

黑客快乐!在

相关问题 更多 >