すべてのプロダクト
Search
ドキュメントセンター

PolarDB:LOAD DATAを使用したデータのインポート

最終更新日:Jun 05, 2024

このトピックでは、LOAD DATAステートメントを実行してPolarDB-Xデータベースのテーブルにデータをインポートするときの制限と注意事項について説明します。

注意

  • LOAD DATAステートメントはトランザクションではありません。 LOAD DATAステートメントの実行時にデータベースの故障などの障害が発生した場合、一部のデータの挿入に失敗することがあります。

  • クライアントでlocal-infileを有効にする必要があります。

構文

ロードデータ   
    [ローカル] 
    INFILE 'file_name' 
    [交換 | IGNORE] 
    INTO TABLE tbl_name 
    [文字セットcharset_name] 
    [{フィールド | コラム}
        [「文字列」で終了] 
        ['char' によって囲まれた] 
        ['char 'によるエスケープ] 
    ]
    [ライン]
        ['string' から始める] 
        [「文字列」で終了] 
    ]
    [IGNORE number {LINES | ROWS}] 
    [(col_name_or_mask [, col_name_or_mask] ...)] 

パラメータ説明

パラメーター

説明

ロードデータ [ローカル] INFILE

ファイルをサーバーまたはクライアントのどちらに保存するかを指定します。

file_name

ファイル名が相対パスの场合, クライアントが起动するパスを基准とします。

REPLACE

新しい行の主キーが既存の行の主キーと同じ値を持つ場合に、インポートする行に既存の行を置き換えます。

IGNORE

新しい行の主キーが既存の行の主キーと同じ値を持つ場合、インポートする行を破棄します。

[フィールド] 「文字列」で終了

フィールドを区切るために使用される区切り文字。 デフォルト値: \t

[フィールド] 'char' で囲まれた

データの各列を囲むために使用される文字。 たとえば、"test" 文字列が列にあり、このパラメーターが "" 'に設定されている場合、データのインポート前に二重引用符 ("") は "test" から削除されます。

[ライン] 「文字列」で終了

データの行を区切るために使用される区切り文字。 デフォルト値:\n

番号ラインを無視

ファイル内で無視する最初の行の数。 たとえば、IGNORE 1 LINESでは、データのインポート時にデータの最初の行を無視するように指定します。

(col_name_or_mask [, col_name_or_mask] ...)

  1. インポートする列。 このパラメーターを指定しない場合、データはデフォルトで列順にインポートされます。

  2. 無視するファイル内の列。 このパラメーターを指定すると、データのインポート時にファイル内の指定された列は無視されます。 たとえば、データはファイルからtable test(x int, y int) テーブルにインポートされます。 ファイルには3つの列があります。 データインポートに (x, @ name, y) を指定した場合、ファイルの2番目の列は無視されます。 テーブルのx列はファイルの最初の列の値で埋められ、テーブルのy列はファイルの3番目の列の値で埋められます。

テストテーブルを作成します。

CREATE TABLE test ( a int(11) NOT NULL DEFAULT '0', b varchar(8) NOT NULL, PRIMARY KEY (a) ) DBPARTITION by hash(a);

次のコードブロックは、インポートするローカルファイルの内容を提供します。

x,y
test1,2
test2,3
test3,4
test4,5
test5,6
test7,8
test8,9 

ファイルをインポートするには、次のLOAD DATAステートメントを実行します。

LOAD DATA LOCAL INFILE '~/test.txt' IGNORE INTO TABLE test FIELDS TERMINATED BY ',' LINES STARTING BY 'test' TERMINATED BY '\n' IGNORE 1 LINES;

次の応答が返されます。

select * fromテストオーダーによって;
+ ----- + ------
| a | b |
+ ----- + ------
| 1 | 2 |
| 2 | 3 |
| 3 | 4 |
| 4 | 5 |
| 5 | 6 |
| 7 | 8 |
| 8 | 9 |
+ ----- + ------
セットの7行 (0.02秒)