0

当我尝试将子元素属性和文本放入 SQL 数据库时,我得到以下信息:

将记录插入 python_users 表 1054 (42S22) 失败:“字段列表”中的未知列“a”。

SQL 本身设置了一个名为“valoare”的表和 2 个值区域(“moneda”和“flux”)

for child in root:
    for element in child:
        for subelement in element:
            a = subelement.attrib["currency"]
            b = subelement.text
            connection = mysql.connector.connect(
                host="localhost",
                user="root",
                passwd="admin",
                database="python",
            )
            sql_insert_query = """ INSERT INTO valoare
                          (moneda, flux) VALUES (a, b)"""
            cursor = connection.cursor()
            result = cursor.execute(sql_insert_query)
            connection.commit()
4

1 回答 1

0

实际错误是由于不使用您应该使用的占位符引起的。

此外,您真的不希望像每个元素那样重新连接到数据库。此外,您只能在一切完成后提交:

connection = mysql.connector.connect(
    host="localhost", user="root", passwd="admin", database="python"
)
cursor = connection.cursor()

for child in root:
    for element in child:
        for subelement in element:
            a = subelement.attrib["currency"]
            b = subelement.text
            result = cursor.execute(
                "INSERT INTO valoare (moneda, flux) VALUES (%s, %s)", (a, b)
            )

connection.commit()
于 2019-04-29T13:42:42.427 回答