2

現在、クエリでLOAD DATA INFILEを使用していますが、データを分離する方法がわかりません。

データは次の形式です。firstname:lastname

$this->db->query("LOAD DATA INFILE 'names.txt' 
                  INTO names firstname lastname 
                FIELDS TERMINATED BY ':'");

これを使用してテキストファイルからデータを取得し、firstname:lastnameを分割してfirstnameをfirstnameに、lastnameをlastnameに挿入するにはどうすればよいですか?

4

1 に答える 1

1

あなたのテーブル名はnames. その場合、クエリは次のようになります。

"LOAD DATA INFILE 'names.txt' 
    INTO TABLE names
    FIELDS TERMINATED BY ':' 
    (firstname, lastname)"

次に、もちろんステートメントを実行する必要があります。

また、改行文字、フィールド エンクロージャ文字、およびフィールド エスケープ文字にも注意してください。それぞれ[LINES] TERMINATED BY,[FIELDS] ENCLOSED BYおよびを指定します[FIELDS] ESCAPED BY(角括弧は、LINESまたはFIELDSを 1 回だけ指定することを意味します)。

于 2011-01-31T08:04:19.777 に答える