Почему мой типизированный набор данных не похож на временные таблицы? - PullRequest
9 голосов
/ 28 мая 2009

Я пытаюсь добавить табличный адаптер к хранимой процедуре в моем SQL Server 2005 Express. Хранимая процедура, однако, использует временную таблицу с именем #temp. При создании адаптера таблицы Visual Studio жалуется на «неизвестный объект« #temp »» и говорит, что хранимая процедура возвращает 0 столбцов. Это проблематично, потому что я использую эту хранимую процедуру с отчетом Crystal, и мне нужны эти столбцы.

Как я могу это исправить?

Ответы [ 2 ]

31 голосов
/ 28 мая 2009

Bizarre. Согласно это вы добавляете

IF 1=0 BEGIN
    SET FMTONLY OFF
END

к SP сразу после AS-части SP, и она работает. Visual Studio теперь не имеет проблем с этим. Я понятия не имею, почему это работает так или почему это будет работать, но это так.

1 голос
/ 15 октября 2014

Это может быть старый поток, и ответ найден, но когда кто-то входит в вашу хранимую процедуру после и видит этот код, он действительно не понимает. Есть другой способ сделать это правильно, и это просто объявить таблицу как переменную, подобную этой:

DECLARE @temp TABLE  
(
    SomeText1 nvarchar(255),
    SomeText2 nvarchar(255)
)

Кроме того, не забудьте удалить DROP TABLE в конце.

PS: Если вам действительно нужно использовать временную таблицу, потому что вам нужно ее создать, то вам нужно написать код, приведенный в предыдущем ответе. Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...