私は既に1つのmysqlテーブルにあるデータを別のテーブルに挿入しようとしています。カラム名は各テーブルで同じで、objkey
は、私が見たいカラムをmysqlに伝えるために使用したいアイテムのための分かりやすいデータです。Pythonを使ってあるテーブルから別のテーブルにmysqlデータを挿入する
import MySQLdb
db = MySQLdb.connect(host='', user='', passwd='', db='')
cursor = db.cursor
sql = "INSERT INTO newtable (%s, %s, %s, %s) SELECT %s, %s, %s, %s FROM oldtable
WHERE %s;" % ((name, desig, data, num), name, desig, data, num, obj = repr(objkey))
cursor.execute(sql)
db.commit()
db.close()
は、それは私が構文エラーを持っていると言うが、私は私が初めてではなく、二番目のフィールド名を囲む括弧がなければならないかなり確信しているので、どこか分かりません。誰でも私が間違っていることを知っている?
最初の行に書き込む表の列の名前を入れ、読み取っている表の列名を2行目に置く必要があります。だからこの答えでは、catidとタイトルは同じテーブルを指していない。 –
'obj = repr(objkey)'で何をしようとしていますか?必要なSQL文を表示する可能性があります。 – Parfait
実際のエラーメッセージを表示できますか? – sadmicrowave