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

Откуда:
Сообщений: 2
Есть запрос:
IF OBJECT_ID('tempdb..#tmp_tbl') IS NOT NULL
DROP TABLE #tmp_tbl
select  object_name(id) As TableName
into #tmp_tbl
from syscolumns 
where name= 'deslient'
DECLARE @Nametbl varchar(50);
DECLARE contact_cursor CURSOR FOR
SELECT * FROM #tmp_tbl
OPEN contact_cursor;
FETCH NEXT FROM contact_cursor
INTO @Nametbl;
WHILE @@FETCH_STATUS = 0
BEGIN
     exec('SELECT destclient FROM '+@Nametbl)
 --+' where destclient=2')
   FETCH NEXT FROM contact_cursor
   INTO @Nametbl;
END
CLOSE contact_cursor;
DEALLOCATE contact_cursor;


Есть временная таблица #tmp_tbl, в которой список имен таблиц БД (в которых есть колумн с названием destclient), надо из всех этих таблиц вывести строки, в которых поле destclient принимает определенные значения. В исходном виде запрос работает, но если добавить внутрь динамического запроса условие (раскоментить where и убрать лишнюю скобку) - exec('SELECT destclient FROM '+@Nametbl+' where destclient=2') возникает ошибка, каким образом можно реализовать условие?
12 фев 14, 09:03    [15554819]     Ответить | Цитировать Сообщить модератору
 Re: Условие внутри динамическа запроса  [new]
aleks2
Guest
Битва экстрасексов?
Т.е. ошибку предлагается угадать?
12 фев 14, 09:10    [15554830]     Ответить | Цитировать Сообщить модератору
 Re: Условие внутри динамическа запроса  [new]
aleks2
Guest
Как главный здешний экстрасекс, вангую....

destclient содержит фсякую фуйню, а не целые (или просто) числа?
12 фев 14, 09:12    [15554840]     Ответить | Цитировать Сообщить модератору
 Re: Условие внутри динамическа запроса  [new]
iib_tstl
Member

Откуда:
Сообщений: 2
aleks2,

Содержит целые числа, в общем все работает, сам натупил)
12 фев 14, 09:14    [15554847]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить