Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Можно ли в SQL запрос передать удобным способом Массив(Список Значений,Таблицу Значений)  [new]
YanMalyakov
Member

Откуда: Краснодар
Сообщений: 36
Здравствуйте возникла необходимость,в передаче данных из 1С в SQL в виде Массива(Списока Значений или Таблицы Значений)
Пока вопрос решил так
Создаю доп. таблицу в базе SQL и заполняю созданную таблицу

в цикле

RS2 = СоздатьОбъект("ODBCRecordSet");
ТзВыгрузкаЗапрос2.ВыбратьСтроки() ;
Пока ТзВыгрузкаЗапрос2.ПолучитьСтроку() = 1 Цикл
Если ПустоеЗначение(ТзВыгрузкаЗапрос2.Товар) = 0 Тогда
ТекстЗапросаЗаполнитьТабл ="
|INSERT INTO [SMP_2013].[dbo].[Tovars] (Code,Tovar)
|VALUES ('"+ СокрЛп(ТзВыгрузкаЗапрос2.Товар.Код) +"' ,'"+ СокрЛп(ТзВыгрузкаЗапрос2.Товар) +"')";

RS2.ВыполнитьИнструкцию(ТекстЗапросаЗаполнитьТабл);
КонецЕсли ;
КонецЦикла;
RS2.Отладка(0);

Существует ли более удобный способ передачи данных например в хранимую процедуру
в виде переменной например @Table = ТабЗначИз1С
8 фев 14, 15:57    [15539443]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в SQL запрос передать удобным способом Массив(Список Значений,Таблицу Значений)  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
YanMalyakov,

начиная с SQL2008 параметр процедуры или функции может быть табличного типа (READONLY)
Кроме того, во всех версиях в хранимой процедуре доступна временная таблица, созданная перед вызовом процедуры.

Кроме всего этого: Массивы и Списки в SQL Server
8 фев 14, 16:07    [15539468]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли в SQL запрос передать удобным способом Массив(Список Значений,Таблицу Значений)  [new]
YanMalyakov
Member

Откуда: Краснодар
Сообщений: 36
Спасибо iap
вот тоже нарыл __http://info-comp.ru/obucheniest/298-transact-sql-return-table.html
мож кому пригодится
8 фев 14, 16:23    [15539515]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить