栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

pysqlite:用占位符替换列或表名?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

pysqlite:用占位符替换列或表名?

您根本不能将占位符用于列或表名。我对此没有权威的引用-我只是从尝试过和失败中“知道”这一点。但这有一定道理:

  • 如果可以对列和表进行参数化,则
    execute
    在提取之前准备(-ing)SQL语句的目的不多,因为可以替换语句的所有部分。
  • 我不确定pysqlite 1,但MySQLdb自动引用所有字符串参数。列名和表名不应加引号。因此,如果必须决定占位符是否表示列名或表名与需要引用的值,则会使驱动程序所需的解析复杂化。

简而言之,您已经找到了正确的方法-使用字符串格式。

c.execute('SELECt {} FROM {} WHERe id=?'.format(column, table), row))

1并非所有驱动程序都引用参数-

oursql
不会,因为它会将SQL和参数分别发送到服务器。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/638495.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号