如果是这样,我该怎么做?
问问题
843 次
2 回答
2
执行准备好的语句时,不会生成新的 SQL。准备好的语句的想法是 SQL 查询和它的数据是分开传输的(这就是为什么你不必转义任何参数)——查询很可能只在准备好后以优化的形式存储。
于 2010-05-11T11:31:15.623 回答
1
当您创建准备好的语句时,“模板”SQL 代码已经发送到 DBMS,DBMS 将其编译成表达式树。当您传递值时,相应的库(在您的情况下为 python sqlite3 模块)不会将值合并到语句中。DBMS 可以。
如果您仍想生成一个普通的 SQL 字符串,您可以使用字符串替换函数将占位符替换为值(在转义它们之后)。
你需要这个做什么?
于 2010-05-11T11:39:19.013 回答