Python - 获取变量并插入mysqlDB

时间:2014-01-08 19:14:27

标签: python string

这可能比我做的更简单。

基本上我在这里编写我的第二个python脚本。我想打开一个mysql连接,处理一个for循环,然后将x int插入数据库。

我有一切正常,期待,我不确定如何插入xstring而不是文字xstring。在C#中它将是'" + xstring +"',但我不确定如何在Python中执行此操作。

谢谢!

#!/usr/bin/python
# -*- coding: utf-8 -*-

import MySQLdb as mdb
import sys

try:
con = mdb.connect('localhost', 'root', 'root', 'PythonTest');
with con:
        cur = con.cursor()
        for x in range(0, 3):
                xstring = str(x)

                    cur.execute("INSERT INTO Testing(KeyColumn,KeyValue) VALUES('Jack London','"xstring"')

except _mysql.Error, e:

print "Error %d: %s" % (e.args[0], e.args[1])
sys.exit(1)

finally:

if con:
    con.close()

1 个答案:

答案 0 :(得分:0)

Python' s DB API specification指定如下:

cur.execute("INSERT INTO Testing(KeyColumn,KeyValue) VALUES('Jack London', %s), (x,))

警告:永远不要在数据库查询中使用原始字符串格式,这样就不会让B obby Tables向您的数据库注入令人讨厌的东西。而是使用库方法来参数化SQL查询。