Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Превращение столбца в строку [D6, IB6.x]


Vemer ©   (2003-10-28 10:28:00) 

Всем привет!
Не знает ли кто-нибудь простого способа (SQL?) преобразования столбца таблицы с небольшим кол-вом строковых значений в одну строку , а то перебор таблицы с добавлением значений к строке как-то не очень.
---------------------------
ACCESS DENIED, Delphi recomended! (c)Vemer


Vemer   (2003-10-28 17:06:00) [1]

Привет. Смотрю, щас пытаться буду. Всем спасибо.

З.Ы. Почему-то мои дурные вопросы всегда бурное обсуждение вызывают.


Johnmen   (2003-10-28 15:34:00) [2]

>Zacho © (28.10.03 15:18)

Посмотрел. Интересно. Не сталкивался, т.к. IBX не пользуюсь. А когда пользовался, указанных проблем почему-то не возникало...:)
Вообще на эту тему можно изрядно пофилософствовать, да кому это надо :)))))))))))


Fiend   (2003-10-28 15:34:00) [3]

Слушайте люди!!!
А чё мы тут собсно воду в ступе месим, если вопрошающий даже не смотрит сюда(судя по всему).
;)


Zacho   (2003-10-28 15:18:00) [4]


> Johnmen © (28.10.03 15:07) [14]

См. http://www.ibase.ru/devinfo/ibstp.htm


Johnmen   (2003-10-28 15:07:00) [5]

>Zacho © (28.10.03 14:43)

Какой именно баг ?


Zacho   (2003-10-28 14:43:00) [6]

И все-таки посоветовал бы всегда использовать SUSPEND и SELECT * FROM SP, памятуя о баге в isc_dsql_execute2 в IB (исправлен в FB и YA) и соответствующем баге в IBX


Johnmen   (2003-10-28 14:35:00) [7]

>Fiend © (28.10.03 14:08)

Несколько не так.
Назначение SUSPEND описано в документации..
От себя добавлю, что если хотим обратиться к ХП селектом, то саспенд нужен. Если напрямую, то нет. В данном случае возвращается одно значение, а значит обращаться селектом не вполне корректно (хотя и возможно).


Fiend   (2003-10-28 14:08:00) [8]

То Johnmen:
суспенд нужен дабы возвернуть результат выполнения процедуры, вызывающему ее. А как же иначе???


Val   (2003-10-28 13:34:00) [9]

>Fiend © (28.10.03 13:00) [7]
советы - автору вопроса, а не вам, конечно :)


Johnmen   (2003-10-28 13:33:00) [10]

>Fiend © (28.10.03 13:00)

Иногда же приятно поискать ошибки у других :)))

>Fiend © (28.10.03 13:03)

Не так поставил вопрос. Надо так : "Зачем он там ?"
Этот вопрос уже к тебе...:)


Fiend   (2003-10-28 13:03:00) [11]

То Johnmen:
это почему суспенд не нужен?


Fiend   (2003-10-28 13:00:00) [12]

То Johnmen & Val:
ну может быть мне еще за него весь софт написать??? Достаточно и начального куска натыканного одним пальцем
:)


Johnmen   (2003-10-28 12:50:00) [13]

и начальная инициализация ResString="" тоже.


Val   (2003-10-28 12:50:00) [14]

хм..Val © (28.10.03 12:47) [4]
имелись ввиду разделители


Val   (2003-10-28 12:47:00) [15]

а вот пробелы при конкатенации не помешали бы.


Johnmen   (2003-10-28 12:44:00) [16]

И suspend не нужен...:)


Fiend   (2003-10-28 10:36:00) [17]

сорри, results-returns


Fiend   (2003-10-28 10:35:00) [18]

процедуру напиши
results(ResString varchar(300))
as
declare variable Res varchar(10);
begin
for select "Field"
from "Table"
where ...
into Res
do ResString= ResString||Res;
suspend;
end


Наверх

Титульная страница Поиск, карта сайта Написать письмо