Python中文
首页
教程
问答
标签
搜索
登录
注册
Python MySQLdb:create tab时语法错误
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>代码非常简单,我只是直接从控制台运行,同时,<strong>spider.table_名称='爬虫'</strong></p> <pre><code>import MySQLdb import scrapy print (spider.table_name) # >> 'crawler' db = MySQLdb.connect(........) db.set_character_set('utf8') mysql = db.cursor() sql = "CREATE TABLE %s like r_template;" mysql.execute(sql, (spider.table_name, )) db.commit() </code></pre> <p>但我发现语法错误:</p> ^{pr2}$ <p>看起来实际执行的sql语句是:</p> <pre><code>CREATE TABLE 'crawler' like r_template </code></pre> <p><strong>单引号“”是如何生成的?如何防止它发生?</strong></p> <p>然后,我试着用更简单的方法:</p> <pre><code>mysql.execute(sql, ('crawler', )) mysql.execute("CREATE TABLE %s like r_template", ('crawler', )) </code></pre> <p>错误仍然发生。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>使用.format而不是%s这将允许您在查询中避免使用单引号。 例如:</p> <pre><code>my_sql_query = "CREATE TABLE {}".format(table_name) mysql.execute(my_sql_query) </code></pre> <p>这应该行得通:)</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何重塑数组、迭代列的所有行并将重塑后的数组分配给新列?Python/Pandas/Numpy
3 回答
如何重塑数组的形状?
1 回答
如何重塑文本数据以适应keras的LSTM模型
9 回答
如何重塑未对齐的数据集,并使用numpy丢弃剩余数据?
7 回答
如何重塑此数据以使用绘图
9 回答
如何重塑此数据帧?
1 回答
如何重塑此数据集以适应RNN
1 回答
如何重塑没有列的数组?
4 回答
如何重塑测试数据帧,使其维数与训练和预测工作中使用的维数相同?
2 回答
如何重塑系列以在StandardScaler中使用它
4 回答
如何重塑线性回归的数据
4 回答
如何重塑线性回归的数据?
9 回答
如何重塑表格?
1 回答
如何重塑要堆叠的重复宽数据帧?
5 回答
如何重塑输入以放入二维层?
9 回答
如何重塑输入神经网络的三通道数据集
10 回答
如何重塑这个numpy数组
1 回答
如何重塑这个numpy数组以排除“额外维度”?
1 回答
如何重塑这个numpy阵列?
9 回答
如何重塑这个数据帧
1 回答