0

の列という名前のデータベースがmydb あります。の列と同じ順序のデータを持つファイルから、これらの列に 値を挿入します。ループを使用せずにファイルからテーブルに値を挿入する簡単な方法はありますか?mytablemytable"a","b","c","d"a,b,c,dmytablemyfile.txtmytable

編集されたパート

テーブルにはすでに大量のデータが含まれているので、混乱させたくありません。データをロードするだけでなく、値をテーブルに挿入するだけで、ループを使用せずに1つずつではなく1つのコマンドで挿入したいと思います。

ありがとう。

4

5 に答える 5

0

LOADDATAINFILEを試してください

LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
  FIELDS TERMINATED BY ',' ENCLOSED BY '"'
  LINES TERMINATED BY '\r\n'


MYSQLドキュメントを参照してください

于 2012-08-23T06:54:47.570 に答える
0

MySQLローダーを使用する必要があります。

LOAD DATA INFILE 'C:/myfile.txt'
     INTO TABLE mytable
     FIELDS TERMINATED BY ','
     LINES TERMINATED BY '\n';
于 2012-08-23T06:55:14.777 に答える
0

INFILEを使用できます

mysql -e "LOAD DATA INFILE 'ls.dat' INTO TABLE t1" db1
于 2012-08-23T06:55:44.997 に答える
0

txtファイルの代わりにcsvファイルを使用する方が良いでしょう。たとえば、openofficeやMS Officeでデータを編集してから、データベースにインポートする場合に役立ちます。MySqlの場合、「LOADDATAINFILE」オプションを使用できます。それは速くて効率的です、あなたがテーブルの構造を知っているべきであるということだけが前提条件です。

于 2012-08-23T06:56:28.617 に答える
0

ファイルをCSV(myfile.csv)ファイルとして保存します

次に、コマンドを発行します

LOAD DATA INFILE 'myfile.csv' 
INTO TABLE my_table 
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
(Col1, Col2, Col2, Col4)

CSV形式に変換するときに、Officeプログラムによって追加される空白のセルを削除する必要がある場合があります

于 2012-08-23T07:03:42.197 に答える