Вниз
Скачать: CL | DM;

тип параметра "множество"   Найти похожие ветки 

← →
Bogdan1024 ©   (2007-07-13 14:08) [0]

Хочу в MSSQL2005 создать хранимую процедуру вроде такой:
SELECT * FROM A WHERE ID IN @IDs
Какого типа должен быть параметр @IDs? Как это записать?


← →
Ega23 ©   (2007-07-13 14:12) [1]

varchar
а выполнять - exec("SELECT * FROM A WHERE ID IN (" + @IDs + ")");


← →
MsGuns ©   (2007-07-13 14:23) [2]

Если невозможно заранее определить кол-во входных параметров, то мы делаем просто: параметр один - строковый, а ХП еге "режет" на кусочки, которые и пихает в запросы например


← →
Bogdan1024 ©   (2007-07-13 15:03) [3]

Ega23, спасибо!!! Но такой же способ не позволяет круто скомпилировать хранимую процедуру, жаль :(
MsGuns, а что такое ХП?


← →
Ega23 ©   (2007-07-13 15:09) [4]


> Ega23, спасибо!!! Но такой же способ не позволяет круто
> скомпилировать хранимую процедуру, жаль :(


Почему????


> MsGuns, а что такое ХП?


ХП - Хранимая Процедура


← →
Desdechado ©   (2007-07-13 15:16) [5]

Это не параметризуется, увы.
А динамическая лепка хоть и красива, но больно бьет по серверу.


← →
Desdechado ©   (2007-07-13 15:17) [6]

Как вариант, сформировать это множество как выборку из другой таблицы по какому-нибудь групповому признаку. Хотя это не всегда и возможно (например, нужно использовать "что юзер натыкал", а тут никакого группового признака не найти).


← →
Bogdan1024 ©   (2007-07-13 15:41) [7]

Ega23> Почему????
Я> Ну, я это имел ввиду:
Desdechado> Динамическая лепка хоть и красива, но больно бьет по серверу.
Я> :)


← →
Desdechado ©   (2007-07-13 15:54) [8]

Еще как вариант, эти натыканные юзером можно складывать во временную таблицу, и потом юзать ее. Но это подходит в случае, когда много запросов используют одно множество. Для одного-двух это хуже, чем динамическая лепка.


← →
Jan1 ©   (2007-07-13 15:55) [9]


> SELECT * FROM A WHERE ID IN @IDs

в чем сакральный смысл такой ХП?


← →
Ega23 ©   (2007-07-13 16:05) [10]


> в чем сакральный смысл такой ХП?


Ну во-первых она может и гораздо сложнее быть.
А во-вторых, лично у меня всё только через ХП.


← →
Jan1   (2007-07-13 16:10) [11]


> Ну во-первых она может и гораздо сложнее быть.

вопрос был именно про такую ХП.


> А во-вторых, лично у меня всё только через ХП.

ничего хорошего в крайностях нет...


← →
Bogdan1024 ©   (2007-07-13 16:43) [12]

> Ну во-первых она может и гораздо сложнее быть.
> А во-вторых, лично у меня всё только через ХП.
Yes to All



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.019 c
11-1177863828
Rusya
2007-04-29 20:23
2007.11.25
Вопрос по OnBeforeCreateWindow


3-1184223354
Alex13
2007-07-12 10:55
2007.11.25
Как связать 2 XML таблицы


6-1174642598
StrangerMX
2007-03-23 12:36
2007.11.25
TIdNNTP


6-1174982246
skye
2007-03-27 11:57
2007.11.25
Game Monitor


2-1193732460
NikolayGa
2007-10-30 11:21
2007.11.25
with




   Наверх