|
Прямое обращение к sql | ☑ | ||
|---|---|---|---|---|
|
0
Anttonnio
05.08.17
✎
00:44
|
Добрый вечер!
Сейчас реализую обработку, которая выполняет прямой запрос к Скулю. Но не могу понять - как передать массив/список значений в параметр Для одного реализовал такой код: Попытка Соединение = Новый COMОбъект("ADODB.Connection"); Команда = Новый COMОбъект("ADODB.Command"); Соединение.ConnectionString = "Provider=SQLOLEDB;" + "server="+Объект.ИмяСервераSQL+";"+ "uid="+Объект.ПользовательSQL+";"+ "pwd="+Объект.ПарольSQL+";"+ "database="+Объект.БазаДанныхSQL+";"; Соединение.ConnectionTimeout = 300; Соединение.CommandTimeout = 600; //Открытие соединение Соединение.Open(); Команда.ActiveConnection = Соединение; Сообщить("Успешное подключение!"); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; гуид = Строка(Объект.Отбор[0].ЭлементОтбора.УникальныйИдентификатор()); гуид = СтрЗаменить(гуид,"-", Символы.ПС); скульныйгуид = "0x" + СтрПолучитьСтроку(гуид,4) + СтрПолучитьСтроку(гуид,5) + СтрПолучитьСтроку(гуид,3) + СтрПолучитьСтроку(гуид,2) + СтрПолучитьСтроку(гуид,1); Для Каждого Стр из Объект.ТаблицыДляЗачистки Цикл Команда.CommandText = " | DELETE FROM " + Стр.НаименованиеТаблицыSQL + " WHERE " + Стр.НаименованиеТаблицыSQL + "."+Стр.НаименованиеПоляSQL + "!=" + скульныйгуид + ?(Стр.СоставнойТип, " and " + Стр.НаименованиеТаблицыSQL + "."+СтрЗаменить(Стр.НаименованиеПоляSQL,"_RRRef","_RTRef") + "=" + Объект.RTRefРазделаОтбора ,"") ; Попытка Команда.Execute(); Исключение Сообщить("Запись не удалена! |" + Команда.CommandText); Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЦикла; подскажите, пожалуйста, как вместо "скульныйгуид" передать массив и написать "в"? |
|||
|
1
Маленький Мук
05.08.17
✎
00:58
|
OR
|
|||
|
2
Diman000
05.08.17
✎
02:43
|
IN
|
|||
|
3
Имитация работы
05.08.17
✎
02:54
|
inner join @Table
|
|||
|
4
youalex
05.08.17
✎
05:31
|
cte + delete from ... join cte on ...
|
| Форум | Правила | Описание | Секции | Поиск |