一、把mysql粘贴到python代码中遇到的问题
(1)当用占位符%s传入时间格式(xxxx-xx-xx)的时候返回的结果,和用navicat和sqlyong返回的结果不一样,后来发现是个需要注意的地方。
当execute执行mysql语句参数的两种情况:
1、execute(“insert into teacher(TName, age) values(‘%s’,‘%s’);” % (“Tom”,“43”) ) #此时的%s为字符串拼接占位符,需要引号加’%s’ 。(有sql注入风险)
2、execute(“insert into teacher(TName, age) values(%s,%s);” , (“Tom”,“43”) ) #此时的%s为sql语句占位符,不需要引号%s。
因为我是用的第一种情况,所以加了引号就没问题了。
(2)报错:ValueError: unsupported format character ‘Y’ (0x59) at index 1827
原因:
参数之间发生冲突,date_format中的时间参数%Y与Python中的格式参数%s发生了冲突。
解决方法:
将SQL中的date_format(sign_time, ‘%Y-%m-%d’) 改为 date_format(sign_time, ‘%%Y-%%m-%%d’)即可。
二、windows系统切换到指定文件夹
(1)打开终端。