Показать сообщение отдельно
  #4  
Старый 12.08.2007, 07:22
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Как я понял ты добавляешь "много чего" в одну таблицу основываясь на данных из другой таблицы. Это дело нужно оптимизировать. Есть (ну по крайней мере мне известно) 2 варианта как это сделать.
1.
Код:
INSERT INTO Table2
(Field1, Field2, Field3) 
SELECT FieldA as Field1, FieldB as Field2, FieldC as Field3 FROM Table1
WHERE Field1 = 'Some'
2.
Код:
INSERT INTO Table2
(Field1, Field2, Field3) 
SELECT ('Text1' as Field1,'Text2' as Field2, 'Text3' as Field3)
UNION
SELECT ('Text4','Text5', 'Text6')
UNION
SELECT ('Text7','Text8', 'Text9')
...
таким образом у тебя будет выполнятся один INSERT, а не несколько тысяч.
Ответить с цитированием