Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.30;
Скачать: CL | DM;

Вниз

Переменные в имени таблице (... FROM @myvar)   Найти похожие ветки 

 
AndyM   (2002-05-10 15:23) [0]

Hi ALL!!!
Вот такой вопросик мне нужно организовать примерно вот что:
в хранимую процедуру передается имя таблицы (в переменную @table_name).
в теле процедуры предположим это:

DECLARE @max_id tid
SELECT @max_id = MAX(Id) FROM @table_name

и далее мне нужно в зависимости от значения @max_id что то сделать.
как это можно реализовать??? ведь нельзя в имени таблицы указывать переменную.

пробовал: EXEC("SELECT @max_id = MAX(Id) FROM "+@table_name)
говорит нет переменной @max_id
тогда: EXEC("DECLARE @max_id bigint SELECT @max_id = MAX(Id) FROM "+@table_name)
работает... но нельзя получить значение переменной @max_id...


 
Delirium ©   (2002-05-10 16:17) [1]

сделай так :

DECLARE @max_id bigint
select @max_id=Max_Id
from OpenQuery(LocalServer,"SELECT MAX(Id) as Max_ID FROM "+@table_name)

где LocalServer - liked server сам к себе


 
AndyM   (2002-05-10 16:48) [2]

т.е. если мой сервер называется AAA
то как сделать LocalServer?
EXEC sp_addlinkedserver @server="LocalServer", @srvproduct="", @provider="SQLOLEDB", @datasrc="AAA"
так?


 
Delirium ©   (2002-05-10 17:11) [3]

Можно и так, а если не уверен - Enterprise Manager -> Security -> Linked Servers



Страницы: 1 вся ветка

Текущий архив: 2002.05.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
3-97176
lexx_h
2002-05-07 12:54
2002.05.30
PL/pgSQL problem


1-97240
kserg@ukr.net
2002-05-20 20:20
2002.05.30
несовсем умный вопрос: Как


14-97414
esu
2002-04-22 16:56
2002.05.30
Задачка мастерам от новичка :)


3-97183
СергейКнязев
2002-05-06 16:33
2002.05.30
Почему в W2K размер Memo вроде не ограничен, а в W 98 ограничен


3-97189
DPetrovich
2002-05-08 12:25
2002.05.30
Проблема с кодировкой