17

Python から LOAD DATA LOCAL INFILE コマンドを実行するための構文定義、例、サンプル コード、wiki などを探しています。

利用可能であれば mysqlimport も使用できると思いますので、より良い方法に関するフィードバック (およびコード スニペット) を歓迎します。Google 検索で現在の情報があまり表示されない

どちらの場合も目標は同じです。既知の命名規則と日付構造を持つ何百ものファイルを単一の MySQL テーブルに自動的にロードすることです。

デビッド

4

2 に答える 2

29

さて、PythonのMySQLdbを使用して、私はこれを使用します:

connection = MySQLdb.Connect(host='**', user='**', passwd='**', db='**')
cursor = connection.cursor()
query = "LOAD DATA INFILE '/path/to/my/file' INTO TABLE sometable FIELDS TERMINATED BY ';' ENCLOSED BY '\"' ESCAPED BY '\\\\'"
cursor.execute( query )
connection.commit()

必要に応じて、host/user/passwd/db を置き換えます。これは、MySQL のドキュメントに基づいています正確な LOAD DATA INFILE ステートメントは、特定の要件などによって異なります (FIELDS TERMINATED BY、ENCLOSED BY、および ESCAPED BY ステートメントは、読み込もうとしているファイルのタイプに固有のものになることに注意してください。 )。

于 2009-08-05T17:46:39.177 に答える
-1

クエリの後に次の行を追加して、インポートの結果を取得することもできます。

results = connection.info()
于 2010-05-10T11:09:23.077 に答える