powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FIBPlus: как получить возвращаемое хранимой процедурой значение?
23 сообщений из 48, страница 2 из 2
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583419
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shalamyansky,

в аттаче - икземплы из FIBPlus. С небольшим описанием (см. файл FIBPlus Examples_rus.doc).
Там есть и работа с процедурами (см. подкаталог StoredProcedure). Работа и с использованием TpFIBStoredProc, и с использованием TpFIBDataSet.
~~~~~~~
Насчет TpFIBDataSet - вопрос отдельный.
А вот вместо TpFIBStoredProc лично я обычно использую TpFIBQuery (см. примеры выше).


Часть 1:
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583420
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shalamyansky,

Часть 2:
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583424
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийэто не так давно ввели - селективные/неселективные.

Причём лично я так и не понял назачем это сделали.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583428
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
12.01.2018 17:15, Dimitry Sibiryakov пишет:
> Причём лично я так и не понял назачем это сделали.

чтоб выдавать вот то самое сообщение.
и backward compatibility потыкать палочкой.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583431
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччYuRock...Не знаю, как в FIBPlus, в IBX я пишу так и всё работает всегда:...
Теперь скажи - нах.. это тайное знание автору вопроса?
Возможно в фибах тоже так можно. Проверить не могу. Это было бы логично - узнавать значения параметры из Parameters, а не из Fields.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583434
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий12.01.2018 16:55, YuRock пишет:
> Procedure PROCEDURENAME is not selectable (it does not contain a SUSPEND statement).

это не так давно ввели - селективные/неселективные.
На 2.1. точно было и есть. Раньше не знаю.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583435
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockчччпропущено...

Теперь скажи - нах.. это тайное знание автору вопроса?
Возможно в фибах тоже так можно. Проверить не могу. Это было бы логично - узнавать значения параметры из Parameters, а не из Fields.

А ты на питоне не кодишь? Логично было бы рассказать как это сделать на питоне.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583453
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДYuRockпропущено...

Возможно в фибах тоже так можно. Проверить не могу. Это было бы логично - узнавать значения параметры из Parameters, а не из Fields.

А ты на питоне не кодишь? Логично было бы рассказать как это сделать на питоне.
Нет, это было бы не логично. Питон к делфовым DataSet'ам отношения не имеет, как и вообще питон к этой теме.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583470
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockчччДпропущено...


А ты на питоне не кодишь? Логично было бы рассказать как это сделать на питоне.
Нет, это было бы не логично. Питон к делфовым DataSet'ам отношения не имеет, как и вообще питон к этой теме.

Понятно, "Delphi".
Расскажешь про BDE, UIB, FireDAC, UniDAC?
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583475
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
12.01.2018 18:17, чччД пишет:
> Расскажешь про BDE, UIB, FireDAC, UniDAC?

ЯуЩЫ!
(Zeos)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583486
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДПонятно, "Delphi".
Расскажешь про BDE, UIB, FireDAC, UniDAC?
Что ты несешь. Fib+ сделан на той же основе, что и IBX. Эта основа - далеко не только "Delphi".
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583489
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ндя. Френсис Бэкон со своими идолами рода, пещеры, рынка и театра вертится в гробу как шампур в электрошашлычнице. Джентльмены, вы послушайте себя, о чём вы судачите. Датасет - не датасет... Как будто селект насильно запихивает прямо в грид записи из подготовленного набора, а не клиент сам их фетчит поштучно (с буферизацией) через свои клиентские прокладки, для Дельфей - датасорс-датасет, и сам решает что с ними делать. Возврат селективной процедуры (с suspend) после select интерпретируется вызывающим кодом так, что возвращаемые параметры трактуются как филды, а после execute они так и остаются параметрами. С невозможностью подфетчить следующий набор. Не потому что его нет, а потому что логика клиента так полагает. Вот и фсё. Серверной стороне это абсолютно фиолетово, единственно - для select/execute в PSQL предусмотрена подобная своя "типа клиентская" логика для фетча нескольких наборов параметров, маскированных под филды, или только одного при вызове процедур из процедур. Какие тут, в пень, датасеты, проживающие в Дельфях...
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583501
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый плюшевый мишка> Возврат селективной процедуры (с suspend) после select интерпретируется вызывающим кодом так, что возвращаемые параметры трактуются как филды, а после execute они так и остаются параметрами.

Ну вот ты уже точно про питон рассказываешь? Нет, просто пятничный троллинг? Или просто забыл добавить "я в этих ваших FIB+ как ***** в апельсинах, но..."?
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583516
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С точки зрения сервера, есть sql statements, которые создают курсор, и есть sql statements, которые не создают курсор.
Курсор - вполне себе физический объект.
В Firebird только запросы SELECT возвращают курсор.
Запрос EXECUTE PROCEDURE (и, например, INSERT ... RETURNING) курсор не возвращает.
У запросов могут быть входные и\или выходные параметры.
Одновременно выходные параметры и курсор - не бывает (в Firebird).
Курсор может быть только один (в SQL, на уровне BLR API их может быть много, если я его правильно понимаю, но это уже другая песня).
Всё остальное - интерпретации компоненто-и драйверо- писателей.

PS флаг SELECTABLE для процедур нас буквально заставили сделать те самые драйверо- писатели.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583543
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДСтарый плюшевый мишка> Возврат селективной процедуры (с suspend) после select интерпретируется вызывающим кодом так, что возвращаемые параметры трактуются как филды, а после execute они так и остаются параметрами.

Ну вот ты уже точно про питон рассказываешь? Нет, просто пятничный троллинг? Или просто забыл добавить "я в этих ваших FIB+ как ***** в апельсинах, но..."?

Вот в питоне я точно как свинья в апельсинах, а в FIB+ есть кое-что моего личного вклада. Но я не об этом. Не надо смотреть на серверный уровень через призму клиента. Оно потому и называется клиент-сервер, что уровни функциональности разумно разделены. Но взаимосвязаны. Исходя из потребностей практики взаимосвязь может меняться, но только взаимосвязь, а не базовые принципы.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583545
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый плюшевый мишка,

понимаешь, когда мы этим начинали заниматься в переходный период от десктопных баз к серверным, мы хоть десктопные понимали. А сейчас ни десктопные не понимают, ни серверные. Отсюда и возникает вот этот ступор, "чего это тут наворочено". С чем я, в общем-то, согласен.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583551
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый плюшевый мишка...потому и называется клиент-сервер, что уровни функциональности разумно разделены. Но взаимосвязаны. Исходя из потребностей практики взаимосвязь может меняться, но только взаимосвязь, а не базовые принципы.
Это все дьявольски интересно, тем более в пятницу вечером. Но вот даже с учетом того, что СПМв FIB+ есть кое-что моего личного вклада - утверждение
СПМВозврат селективной процедуры (с suspend) после select интерпретируется вызывающим кодом так, что возвращаемые параметры трактуются как филды, а после execute они так и остаются параметрами. с точки зрения пользователя FIB+ не становится истиной.

А так - да, народ измельчал и разбаловался, и хотя никто им не указ - но все хотят на готовенькое, но никто уже не хочет как Базаров - собственноручно (с другой стороны - а где на всех столько лягушек найти?)...
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583560
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

ну, я еще по старинке в исходники заглядываю. А нынче, видимо, и это уже не принято.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583574
shalamyansky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну что, хорошая дискуссия получилась, узнал много нового. Всем спасибо за обсуждение и примеры!
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583594
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

Позволь уж мне напомнить тебе, что после обращения к любому вызову API, возвращающему с сервера данные, клиент получает сырой кусок памяти, в котором ориентируется по смещениям, определённым ранее из метаданных динамически с сервера или статически из кода самого приложения. И этот кусок проходит через десяток прокладок, прежде чем он попадёт в лапы пресловутого датасета. Которые вольны интерпретировать его как угодно, правильно или неправильно, если не учтено что это был за вызов API и какие вызовы следует делать после этого. И передавать друг другу по иерархии для последующих интерпретаций, тоже правильных или ошибочных. И серверу это абсолютно фиолетово. Компрене ву? Продолжай гнуть пальцы. И этта, у меня нынче есть привилегия. Я могу себе назначить пятницей любой день недели. И не один.
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39583595
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всего этого просто не может быть!
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39584302
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
12.01.2018 19:48, hvlad пишет:
> PS флаг SELECTABLE для процедур нас буквально заставили сделать те самые драйверо- писатели.

это те, которые всюду понапихали ISOLATION_READ_UNCOMMITTED?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FIBPlus: как получить возвращаемое хранимой процедурой значение?
    #39584371
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий12.01.2018 19:48, hvlad пишет:
> PS флаг SELECTABLE для процедур нас буквально заставили сделать те самые драйверо- писатели.

это те, которые всюду понапихали ISOLATION_READ_UNCOMMITTED?В каком смысле понапихали ?

PS драйверописателей у нас мало, их надо беречь ;)
...
Рейтинг: 0 / 0
23 сообщений из 48, страница 2 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FIBPlus: как получить возвращаемое хранимой процедурой значение?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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