sql >> データベース >  >> RDS >> Mysql

Python / MySQLクエリエラー:`不明な列`

    "INSERT INTO fruit (name, variety) VALUES (%s, %s)" % ("watermelon", "melon")
    

    文字通り

    になります
    INSERT INTO fruit (name, variety) VALUES (watermelon, melon)
    

    文字列の代わりに、watermelon およびmelon 列です。これを修正するには、%sを引用符で囲みます 。

    "INSERT INTO fruit (name, variety) VALUES ('%s', '%s')" % (new_fruit, new_fruit_type)
    

    ただし、次のように実行する必要があります:

    cursor.execute("INSERT INTO fruit (name, variety) VALUES (%s, %s)", (new_fruit, new_fruit_type));
    

    %sの周りの引用符を取り除いたことに注意してください 変数を2番目の引数としてexecuteに渡します 方法。 Execute 変数からのSQLインジェクションを防ぎ、文字列を引用符で囲みます。

    詳細については、http://mysql-python.sourceforge.net/を参照してください。 MySQLdb.html#some-examples



    1. 不明な初期文字セットインデックスエラーが再導入されましたか?

    2. MicrosoftAccessを必要とする5つのジョブ

    3. MySQLはテーブルをループします

    4. 最適化のしきい値–データのグループ化と集約、パート1