|
помогите с INSERT INTO |
☑ |
0
Rokstedi
24.08.13
✎
16:15
|
Здравствуйте. Подскажите как вставить несколько строк в таблицу SQL одним запросом. Сейчас добавляю каждую строку в цикле, это наверное неправильно, хочу сформировать текст запроса и выполнить его после цикла. Использую такую конструкцию
Connection = Новый COMОбъект("ADODB.Connection");
Command = Новый COMОбъект("ADODB.Command");
RecordSet = Новый COMОбъект("ADODB.RecordSet");
Попытка
Connection.Open(СтрокаСоединения);
Command.ActiveConnection = Connection;
Command.CommandText = ЗапросSQL;
RecordSet = Command.Execute();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
|
|
1
Rie
24.08.13
✎
16:20
|
(0) Сформируй (конкатенацией INSERTов - только чтобы не слишком длинная была) и выполни.
|
|
2
Jaap Vduul
24.08.13
✎
16:24
|
(0)Какой сервер?
Какая версия?
Откуда данные для вставки берутся?
Как много строк планируется добавлять за раз?
|
|
3
Rokstedi
24.08.13
✎
16:45
|
(1) добавляется только одна строка
|
|
4
Rokstedi
24.08.13
✎
16:53
|
(2) MS SQL 2008? данные вручную заполняю, строк добавляю около 20
|
|
5
nicxxx
24.08.13
✎
16:54
|
все правильно. у тебя в любом случае 2 пути - вставка по одной строке и конструкция select into.
и неважно сколько будет строк. если у тебя в 1С нет источника для select into выход только один - делать инсерт в цикле по одной строке
|
|
6
Jaap Vduul
24.08.13
✎
20:47
|
Начиная с 2k8 sql server поддерживает такую инструкцию:
INSERT INTO Table
( Column1, Column2 )
VALUES
( Value1, Value2 ),
...
( Value1, Value2 )
|
|
7
МихаилМ
24.08.13
✎
20:59
|
коли используйте ado, то его методы вставки и используйте.
|
|