-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


Передача в MS SQL табличной переменной не работает

Воскресенье, 04 Июня 2017 г. 00:37 + в цитатник
Здравствуйте !

  strSql = " DECLARE @m_table1 AS m_table; " & _
    " DECLARE @ret int; " & _
    " INSERT INTO @m_table1 (id, val) " & _
    " SELECT 1, 3 " & _
    " union all" & _
    " SELECT 2, 4 " & _
    " union all" & _
    " SELECT 3, 5 " & _
    " union all" & _
    " SELECT 4, 6 ;" & _
    " exec @ret =  p_insert @m_table1, @ret = Null "


Dim qdf As QueryDef
Set qdf = CreateTempQueryDef(strSql)
Set OpenRecordset = qdf.OpenRecordset(dbOpenForwardOnly, dbReadOnly)



Вот такой код я пытаюсь выполнить в акцесе. Он отлично отрабатывает в management studio, а вот акцесс говорит: invalid argument.
Можно ли что-то поправить? Пробовала акцесс самых разных версий, но пока выходит, что проблема возникает именно при работе с табличной переменной. Стоит ее убрать, вот этот вызов: exec @ret = p_insert @m_table1, @ret = Null и всё хорошо.

Переписать процедуру на передачу не таблицы, а параметров в виде чисел можно, но от этого как раз хотелось уйти.

http://www.sql.ru/forum/1262053/peredacha-v-ms-sql-tablichnoy-peremennoy-ne-rabotaet


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку