powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
14 сообщений из 14, страница 1 из 1
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33377832
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно конечно выбрать в datastore все что есть, а потом накладывать на этот большой резалт-сет фильтры на клиентской стороне. Но к сожалению у меня слиииииишком уж много тянуть с сервера получиться тогда. Хочется все же ограничить выборку.
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33377840
alexis glinski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добавить WHERE, и менять его как хочешь ...
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33378671
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlМожно конечно выбрать в datastore все что есть, а потом накладывать на этот большой резалт-сет фильтры на клиентской стороне. Но к сожалению у меня слиииииишком уж много тянуть с сервера получиться тогда. Хочется все же ограничить выборку.
Сначала сделать без аргументов. Потом взять синтаксис и добавить туда аргументы.
Это достаточно простая операция. Если надо могу подробности написать.
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33378803
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky
Сначала сделать без аргументов. Потом взять синтаксис и добавить туда аргументы.
А зачем? если можно в SQL сразу подставить нужные значения.
Это для Oracle критично наличие bind variables, а для например MSSQL или обоих Sybase можно и в текст запроса подставить сразу.
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33378865
AndrewN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрейЭто для Oracle критично наличие bind variables, а для например MSSQL или обоих Sybase можно и в текст запроса подставить сразу.

Очень интересно послушать в чем критичность для Оракла заключается?
:)
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33379368
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрей Anatoly Moskovsky
Сначала сделать без аргументов. Потом взять синтаксис и добавить туда аргументы.
А зачем? если можно в SQL сразу подставить нужные значения.
Это для Oracle критично наличие bind variables, а для например MSSQL или обоих Sybase можно и в текст запроса подставить сразу.
Потому что проще и быстрее вызывать retrieve(...) с разными аргументами, чем формировать where, потом setsqlselect, потом retrieve().
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33379418
AndrewN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky ЗоринАндрей Anatoly Moskovsky
Сначала сделать без аргументов. Потом взять синтаксис и добавить туда аргументы.
А зачем? если можно в SQL сразу подставить нужные значения.
Это для Oracle критично наличие bind variables, а для например MSSQL или обоих Sybase можно и в текст запроса подставить сразу.
Потому что проще и быстрее вызывать retrieve(...) с разными аргументами, чем формировать where, потом setsqlselect, потом retrieve().

А Оракл причем?
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33379562
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrewNА Оракл причем?
Не причем. Я не про него вообще говорил, а про аргументы. То, что я сказал не зависит от БД, поскольку делается в DW на клиенте.
А насчет Оракла и bind - я не рассматривал это как аргумент для использования аргументов, а свои аргументы я описал уже :))
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33379915
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrewNА Оракл причем?
Долго объяснять.
почитать можно тут
В двух словах Oracle считает запросы разными парсит каждый раз и заводит в кэше по плану на каждый такой запрос. Админы говорят "кэш загажен" и матерятся. Оракл как то позволяет управлять этими планами - подробностей не знаю. MSSQL вроде как менее гибок в этом плане он в какой-то момент сам решает что что-то слишком много похожих запросов и "сажает" их на один общий план.

Anatoly MoskovskyПотому что проще и быстрее вызывать retrieve(...) с разными аргументами, чем формировать where, потом setsqlselect, потом retrieve().

Ну да конечно. Добавить агрументы к синтаксису это достаточно простая операция, а формирование where и setsqlselect - недостаточно простая
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33379987
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрейНу да конечно. Добавить агрументы к синтаксису это достаточно простая операция, а формирование where и setsqlselect - недостаточно простая
Подправить результат SyntaxFromSQL() можно только один раз. А потом использовать подготовленный dw много-много раз. А если формировать строку where с константными условиями и заново запускать SyntaxFromSQL()... Можно конечно и так и так... но первый подход мне нравится больше :) И делать его просто и работает быстро.
Хотя все равно, мне кажется что должна быть возможность в SyntaxFromSQL() в параметре presentation дать описание аргументов. Только не получается догадаться какой там синтаксис должен быть :(
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33380044
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрейНу да конечно. Добавить агрументы к синтаксису это достаточно простая операция, а формирование where и setsqlselect - недостаточно простая
Да. Так как первый вариант не меняет интерфейс доступа к операции retrieve DW, а второй меняет, что приводит к двум подходам при использовании DW. Значит при проектировании возникнет необходимость принимать решение в каждом конкретном случае какой подход использовать. Отсюда, проще - первый вариант, т.к. не нужно принимать решение (а не проще по кол-ву строк :)).
Про скорость работы я уже говорил - первый вариант очевидно быстрее работает на большом числе вызовов.
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33380049
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
заново запускать SyntaxFromSQL()
зачем заново-то ?!?!?! количество и тип columns не меняется же ж.
Еще раз громко и отчетливо SetSQLSelect!!!

Аргументы в SyntaxFromSQL назначить нельзя - никак. вообще никак.

Впрочем делайте как хотите.
Мое сугубое ИМХО - подмена SQL прозрачно и просто, а добавление аргументов в синтаксис - хитрый грязный хак.
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33380107
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АБСОЛЮТНО согласен с г-н Зориным :-)
...
Рейтинг: 0 / 0
PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
    #33384599
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрей
Мое сугубое ИМХО - подмена SQL прозрачно и просто, а добавление аргументов в синтаксис - хитрый грязный хак.
Ну грязный или нет, вопрос спорный, мне например было необходимо наоборот убирать аргументы из синтаксиса DW подставляя другую процедуру со строкой аргументов. Решилось именно распарсиванием DW.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PB9, Как сделать DataStore через SyntaxFromSQL с аргументами?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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