В моей старой базе данных у меня есть 2 таблицы:
счета
id
dr_no
customer_name
created_at
invoice_items
id
dr_no
item_name
created_at
Это отношения один ко многим.invoice
может иметь много invoice_item
.Проблема здесь в том, что вместо идентификатора счета-фактуры в качестве ссылки используется dr_no
.
Я занимаюсь обновлением системы и хочу перенести старую базу данных в новую ииспользуйте invoice_id
в качестве ссылки вместо `dr_no.
Текущая таблица invoices
уже содержит 100k
записей, и вместо того, чтобы зацикливать ее, вставляя в новую базу данных, я использовал этот код:
INSERT INTO new_db.invoices SELECT * FROM old_db.invoices;
Это делает работу, но чтобы вставить invoice_items
, я должен зациклить все invoices
, проверить все invoice_items
с определенным dr_no
и вставить в новую таблицу invoice_items
.
Есть ли более эффективный способ сделать это?Я имею в виду, быстрее?Любая помощь будет высоко ценится.