MySQL への自動インクリメント ID を使用したデータのロード
自動インクリメント ID 列を使用して MySQL テーブルにデータをインポートする場合、次のことが重要です。自動インクリメントメカニズムを正しく処理してください。適切に処理しないと、データのインポートによって ID 値が重複したり、不正な ID 値が生成される可能性があります。
問題:
自動インクリメント ID 列を持つテーブルがあり、 CSVファイルからデータを読み込みます。ただし、ID 列を含む CSV ファイルをインポートしようとしても、データベースは ID フィールドに自動入力しません。
解決策:
データベースは ID フィールドに自動インクリメント番号を自動的に入力します。CSV ファイルには ID 列を含めないでください。代わりに、LOAD DATA INFILE ステートメントで ID 列を明示的に NULL に設定します。
例:
非自動インクリメント列のみを含む次の CSV ファイルについて考えてみましょう。 :
afieldvalue,bfieldvalue
次に、次の LOAD DATA INFILE ステートメントを使用して、このデータをテーブルにインポートします。
LOAD DATA INFILE '/tmp/data.csv' INTO TABLE your_table FIELDS TERMINATED BY ',' (AField, BField) SET ID = NULL;
ID = NULL を設定することで、データベースに自動割り当てを指示します。 ID 列に数値を自動インクリメントします。このアプローチにより、データのロード中に自動インクリメント値が正しく処理されることが保証されます。
以上がMySQL で重複または不正な値を含まずに自動インクリメント ID を使用してデータをロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。