Я должен заполнить записи в новой базе данных. Старая схема выглядела следующим образом:Вставить записи базы данных в другом формате
+------------------------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------------------+----------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| trainee_id | int(11) | NO | MUL | NULL | |
| date | date | NO | | NULL | |
| duration | int(11) | NO | | NULL | |
| documentationReference | longtext | YES | | NULL | |
| educationDepartment | longtext | YES | | NULL | |
| completedtasks | longtext | NO | | NULL | |
| yearOfTraining | int(1) | YES | | NULL | |
+------------------------+----------+------+-----+---------+----------------+
Так что теперь мои инструкции вставки выглядит следующим образом:
INSERT INTO `report_completedtask`
VALUES (997,
3,
'2015-01-23',
8,
NULL,
'Netzwerk und Sicherheit',
'Berufsschule',
1);
Но так как моя новая схема выглядит следующим образом:
+----------------------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------------+----------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| trainee_id | int(11) | NO | MUL | NULL | |
| task | longtext | NO | | NULL | |
| date | date | NO | | NULL | |
| year_of_training | int(11) | NO | | NULL | |
| duration | int(11) | YES | | NULL | |
| documentation | longtext | YES | | NULL | |
| education_department | longtext | YES | | NULL | |
+----------------------+----------+------+-----+---------+----------------+
мне нужно бы следующая структура вставки:
INSERT INTO `report_completedtask`
VALUES (997,
3,
'Netzwerk und Sicherheit',
'2015-01-23',
1,
8,
NULL,
'Berufsschule');
Вот настоящая проблема: У меня есть огромный файл со старыми записями, который имеет более 1000 строк. Есть ли способ, которым я могу изменить их все для новой схемы и изменить файл?
Edit: я взял подход dan08 сейчас и объединили его с простой VI команды:
:%s/VALUES/(id,trainee_id,date,duration,documentation,education_department,task,year_of_training) VALUES/g
Иногда это просто слишком просто: D
Но как я могу заставить его работать, поэтому мне не нужно делать это вручную для более 1000 строк инструкций вставки? – ZedsWhatSheSaid
Нет проблем, см. Мое редактирование. – dan08