在编写自己的程序时,需要实现将数据导入数据库,并且是带参数的传递。
执行语句如下:
sql_str = "INSERT INTO teacher(t_name, t_info, t_phone, t_email) VALUES(\'%s\', \'%s\', \'%s\', \'%s\')" % (result, result2, phoneNumber, Email) cur.execute(sql_str)
执行程序后,产生错误:
ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '07、PRICAI'08、ACML'09 程序委员会主席/共同主席,多次担任 ACM K' at line 1")
发现是因为result2参数为一个字符串,而字符串中出现了单引号 ',mysql语句受到影响报错。
原本认为这个问题应该会是有标准解决方案,可是网上查询了一下,遇到这个问题的人不少,但没有很好的方法解决。
于是考虑了一下,可以让sql语句在读取到单引号时,知道这是字符串文本的单引号,所以可以将参数中单引号替换为 \' ,这样或许可以顺利语句如下:
result2 = result2.replace("'","\\'") #将result2中的 ' 替换为 \'
PS: 这里请务必看清双引号以及反斜杠的使用:)
经过测试,问题得到了顺利解决。
补充知识:python动态生成变量及sql语句与DF表转化
先说效果:
如图,本来是这样的一个DF表,表示各字段限制条件(A、B、C、D均为字段名)
通过下面步骤转化为一条sql语句,当然也做了反向操作
for i in range(3):
locals()['f'+str(i)]=[]
import pandas as pd import numpy as np a = pd.DataFrame({"A":[">=",5], "B":["<",6], "C":["in",'("ha","he")'], "D":["like","*q*"] }) print(a) b = [] for i in a.columns: b.append(str(i)+" "+str(a[i][0])+" "+str(a[i][1]).strip()) c = " and ".join(b) #b = b+str(i)+" "+str(a[i][0])+" "+str(a[i][1])+" "+"and"+" " #print(c) d = c.split(" and ") for i in range(3): locals()['f'+str(i)]=[] for j in (range(len(d))): f = d[j].split(" ") locals()['f' + str(i)].append(f[i]) print(f0,f1,f2) g = pd.DataFrame(columns=f0,data=[f1,f2]) print(g)
以上这篇解决python 执行sql语句时所传参数含有单引号的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月18日
2024年11月18日
- ABC唱片-鲍比达·新民乐《满江红》[APE+CUE]
- 许嵩.2014-不如吃茶去【海蝶】【WAV+CUE】
- 周笔畅.2024-HAVE.A.GOOD.NIGHT【SN.Music】【FLAC分轨】
- 周笔畅.2024-HAVE.A.NICE.DAY【SN.Music】【FLAC分轨】
- 证声音乐图书馆《真夏派对 x 迪斯可》[FLAC/分轨][380.78MB]
- 证声音乐图书馆《星空下 爵士钢琴》[320K/MP3][65.88MB]
- 证声音乐图书馆《星空下 爵士钢琴》[FLAC/分轨][283.95MB]
- 沙门怀一《竹山听雨HQ》头版限量[低速原抓WAV+CUE]
- 沙门怀一《于喁·壹HQ》头版限量编号[低速原抓WAV+CUE]
- 群星《魅音绝唱》黑胶CD【WAV】
- 腾格尔.2002-四十独白【风潮】【WAV+CUE】
- 陈明真.1992-到哪里找那么好的人【华星】【WAV+CUE】
- 黄凯芹.2012-廿五年3CD【环球】【WAV+CUE】
- 证声音乐图书馆《七夕 爵士情缘》[320K/MP3][64.8MB]
- 证声音乐图书馆《七夕 爵士情缘》[FLAC/分轨][327.79MB]