«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как заполнить поля автоинкремента с помощью LOAD DATA INFILE в MySQL?

Как заполнить поля автоинкремента с помощью LOAD DATA INFILE в MySQL?

Опубликовано 8 ноября 2024 г.
Просматривать:913

How to Populate Auto-Increment Fields with LOAD DATA INFILE in MySQL?

Заполнение полей с автоматическим приращением с помощью LOAD DATA INFILE в MySQL

При работе с существующей таблицей, где столбец ID является полем с автоматическим приращением, импорт данных через LOAD DATA INFILE может стать проблемой. В этой статье представлено эффективное решение для таких сценариев.

Для ясности рассмотрим следующую структуру таблицы:

---------------------
ID | AField | BField|
---------------------

где ID — поле автоприращения.

Чтобы создать CSV-файл, позволяющий базе данных для автоматического заполнения поля идентификатора числами с автоматическим приращением, идеальный подход — включить в CSV только столбцы без автоматического приращения. Впоследствии явно установите для столбца ID значение NULL в инструкции LOAD DATA INFILE.

Этот подход гарантирует, что база данных генерирует числа с автоматическим приращением для поля ID во время процесса импорта. Например, рассмотрим следующий файл CSV:

afieldvalue, bfieldvalue

Инструкция LOAD DATA INFILE будет выглядеть следующим образом:

LOAD DATA INFILE '/tmp/data.csv'
INTO TABLE your_table
FIELDS TERMINATED BY ','
(AField, BField)
SET ID = NULL;

Следуя этому подходу, вы можете легко заполнять поле идентификатора автоматического приращения при импорте данных через LOAD DATA INFILE в MySQL.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3