Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Передача списка id-шек на sql сервер / 6 сообщений из 6, страница 1 из 1
19.10.2007, 14:03
    #34880987
bumsy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача списка id-шек на sql сервер
А как уважаемый ALL решает такую задачу?:
Пользователь в Dw выделяет записи, потом жмакает в меню выполнить некую функцию и по выделенным записям выполняется процедура на сервере. Собственно интересуют подходы, как передать список id-шек записей в процедуру. Все в строку завернуть и передать в процедуру оказывается не очень удобно, т.к. эту строку потом в процедуре для SELECT'а просто так в WHERE условие не засунешь, да и ограничения есть на длину строки у сервера... Хотелось бы найти более универсальный способ.

Юзаем Sql Server и пока передавал список как строку varchar(8000), а в процедуре отбирал подмножетво строк из таблицы, где в качестве WHERE условия использовал charindex (вхождение id-шки в переданную строку ), но это не универсально и не оптимально, хоть и работает при небольшом размере списка id-шек.

PB 9.0.3 8784
MSSQL 2000
...
Рейтинг: 0 / 0
19.10.2007, 14:13
    #34881029
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача списка id-шек на sql сервер
bumsy wrote:

> Собственно интересуют подходы, как передать список id-шек записей

Собираем список в строку с разделителями, на сервере - нарезаем и
запихиваем во временную таблицу. Делал на ASA, думаю, на MSSQL тоже
реализуемо.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
19.10.2007, 14:14
    #34881033
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача списка id-шек на sql сервер
У нас передаются через временную таблицу, список этих ID-шек уже будет лежать в dw при select'е и по мере выделения у них будет проставляться соотв. отметка. Идея я думаю понятна. А вообще по теме есть http://www.sql.ru/articles/mssql/03060701ArraysAndListsInSQLServer.shtml
...
Рейтинг: 0 / 0
19.10.2007, 14:21
    #34881064
ИвановНН
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача списка id-шек на sql сервер
если сервер поддерживает функции работы с xml, то можно так:
упаковывать id в xml документ (строку) и передавать его (в виде обычной строки) в процедуру,а в процедуре
...
Рейтинг: 0 / 0
19.10.2007, 14:29
    #34881115
ИвановНН
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача списка id-шек на sql сервер
//сообщение выше не дописал - ctrl+enter нажал
а в процедуре написать что-то типа
Код: plaintext
select * from t whete t.id in (select x.id from openxml(@param, ...) x)
я так делал в ASA9, в процедуру передавал одним xml документом id-шники всяких субъектов, классификаторов и т.д.
В процедуру передавалась, примерно, такая строка:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
<param>
  <subject>
    <row> 1232432 </row>
    <row> 32421232432 </row>
    <row> 1432 </row>
    <row> 32 </row>
  </subject>
  <classifier>
    <row>0010107____________________</row>
    <row>142__________________291700</row>
  </classifier>
  <!--
  ...
  <если нужны - еще блоки>
  ...
  -->
</param>
...
Рейтинг: 0 / 0
19.10.2007, 16:26
    #34881493
bumsy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Передача списка id-шек на sql сервер
Спасибо за ответы и за ссылку на статью, очень познавательно.
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Передача списка id-шек на sql сервер / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]