Python辞書からMySQLテーブルを更新する簡単な関数を作成しようとしています:
data = {'foo':1, 'bar':2}
table = 'mytable'
pk = 'mypk'
pk_value = 1
sql = ''
sql += 'UPDATE ' + table
sql += 'SET ' + convert_dict_to_str(data)
sql += 'WHERE ' + pk
sql += ' = ' + pk_value
sql += ';'
def convert_dict_to_str(data):
result = ''
for key in data:
result += "{key} = {value}".format(key=key, value=data[key])
return result
print convert_dict_to_str(data)
"key = value, key = value"
しかし、 dict を?に変換する方法に行き詰まりました。私の例では、望ましい出力は次のようになります。
'foo = 1, bar = 2'