使用python

时间:2016-07-17 14:56:22

标签: python mysql

我有一个名为user的数据库和一个名为Employee的表。 现在我想要一个可以在表(employee)中附加用户详细信息的python程序。

对于linux,代码是:

  mysql -u root -proot
  |>use user;
  |>show tables;
  |>insert into Employee(name,age,salary)
  ->values("jack","25","10000");

我现在正在使用python:

n='jack'
a='25'
sal='10000'
import MySQLdb
x=MySQLdb.connect('localhost','root','root')
y=x.cursor()
y.execute('use user;')
sql='''insert into employee(name,age,salary)
    values('''+n+''','''+a+''','''+sal+''');'''
y.execute(sql)
x.commit()

使用上面的python代码,我无法在表employee中附加用户的详细信息。请帮忙! 谢谢。

1 个答案:

答案 0 :(得分:1)

您需要将占位符放入查询中,然后正确参数化

sql = """
    INSERT INTO 
        employee
        (name, age, salary)
    VALUES
        (%s, %s, %s)
"""
y.execute(sql, (n, a, sal))
x.commit()

另请注意我们如何利用多行字符串来使查询可读。