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

Pythonを介してPython辞書をmysqlDBに保存する方法

    まず第一に、そのような生のSQLクエリを作成しないでください。決して。これが、パラメータ化されたクエリの目的です。 SQLインジェクション を要求しています 攻撃。

    Python辞書など、任意のデータを保存する場合は、そのデータをシリアル化する必要があります。 JSON フォーマットには良い選択でしょう。

    全体として、コードは次のようになります。

    import MySQLdb
    import json
    
    db = MySQLdb.connect(...)    
    cursor = db.cursor() 
    
    dic = {'office': {'component_office': ['Word2010SP0', 'PowerPoint2010SP0']}}
    sql = "INSERT INTO ep_soft(ip_address, soft_data) VALUES (%s, %s)"
    
    cursor.execute(sql, ("192.xxx.xx.xx", json.dumps(dic)))
    cursor.commit()
    


    1. QueryException SQLSTATE[HY000][1045]ユーザー'homestead'@'localhost'のアクセスが拒否されました(パスワードを使用:YES)

    2. データベースの値を使用してPHPの2列テーブルを作成するにはどうすればよいですか?

    3. MySQL接続文字列でのパスワードの指定

    4. MySQLのSELECTステートメントを使用してテーブル名を取得する