python执行SQL语句中有格式化时是否需要加引号

Posted bean_sprouts

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python执行SQL语句中有格式化时是否需要加引号相关的知识,希望对你有一定的参考价值。

import pymysql

db = pymysql.connect(host=\'localhost\', user=\'root\', password=\'123456\', database=\'test\',port=3306)
cursor = db.cursor()

# 方式1:Python的字符串格式化,String类型需要加上单引号
 cols_name = \'6971286372249\'
 sql = "SELECT * FROM tablename WHERE cols_name=\'%s\'" % upc
 cursor.execute(sql)

# 方式2:pymysql里excute自带的字符串拼接,不需要加上单引号
 sql = "SELECT * FROM product WHERE upc=%s"
 cursor.execute(sql, \'6971286372249\')

# 取出查询数据
 data = cursor.fetchall()
 db.close()

以上是关于python执行SQL语句中有格式化时是否需要加引号的主要内容,如果未能解决你的问题,请参考以下文章

Python连接MySQL数据库执行sql语句时的参数问题

一条 SQL 语句是如何执行的

oracle11g中有执行语句和执行脚本,有啥区别?

Redis SINTER语句是否与SQL WHERE语句相当?

SQL 常用判断语句

[转]使用exec和sp_executesql动态执行SQL语句