#mysql #csv #import
#mysql #csv #импорт
Вопрос:
Я пытаюсь импортировать некоторые данные csv в mysql. Проблема в том, что нет точного однозначного сопоставления между полями csv и полями базы данных. Я ищу простой способ импортировать данные только в необходимые поля. Я хочу импортировать некоторые поля, а не другие. Одному из полей я хочу присвоить значение «2» для всех случаев, чтобы соответствовать значению поиска.
Я мог бы купить инструмент, но я не хочу тратить деньги. Могу ли я сделать это с помощью моей команды импорта без необходимости редактировать файл csv? Любые примеры или рекомендации будут с благодарностью приняты.
———- desc addrTable; ——————
------------- -------------- ------ ----- --------- ----------------
| Field | Type | Null | Key | Default | Extra |
------------- -------------- ------ ----- --------- ----------------
| id | int(11) | NO | PRI | NULL | auto_increment |
| supervisor | int(11) | NO | MUL | NULL | |
| lastName | varchar(20) | NO | | NULL | |
| firstName | varchar(20) | NO | | NULL | |
| fullName | varchar(40) | NO | | NULL | |
| addr1 | varchar(50) | NO | | NULL | |
| addr2 | varchar(50) | NO | | NULL | |
| city | varchar(25) | NO | | NULL | |
| state | varchar(2) | NO | | NULL | |
| zipCode | varchar(8) | NO | | NULL | |
| notes | longtext | YES | | NULL | |
| spouse | varchar(30) | NO | | NULL | |
| gender | varchar(1) | NO | | NULL | |
| kids | int(11) | NO | | NULL | |
| birthday | varchar(20) | NO | | NULL | |
| spouseDOB | date | YES | | NULL | |
| email | varchar(75) | NO | | NULL | |
| workPhone | varchar(12) | NO | | NULL | |
| cellPhone | varchar(12) | NO | | NULL | |
------------- -------------- ------ ----- --------- ----------------
———-заголовки CSV——————
Ниже приведены мои заголовки CSV. Обратите внимание, что некоторые из этих заголовков не имеют значений ‘*’d’, и я хочу пропустить эти поля? Также нет поля супервизора. Это поиск, и я хочу присвоить значение ‘2’ каждой отдельной импортированной записи.
"Last_Name",
"First_Name",
"Full_Name",
"Address",
"City",
"State",
"Zip",
"Notes",
"Spouse",
"Kids",
"Birthday",
"Birthday_Day", *
"Birthday_Month", *
"Spouse_DOB",
"Email",
"Work_Phone",
"Cell_Phone"
Ответ №1:
Я бы загрузил данные с помощью mysqlimport во временную таблицу …. затем выберите из временной таблицы в пункт назначения. Таким образом, вы можете добавить недостающий столбец.
например:
insert into t2
select last_name,first_name, etc,2 as supervisorid
from t1