powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Разница SQL синтаксиса в MSSQL и Oracle
25 сообщений из 125, страница 3 из 5
Разница SQL синтаксиса в MSSQL и Oracle
    #38685724
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисsphinx_mv,

там было не "не думаю", а "я бы не сказал"А я грешным делом (почему-то) предполагал, что если кто-то что-то говорит/пишет, этот кто-то пишет/говорит о том, о чем думает и то, что об этом думает... Но оказалось, что для некоторых это не совсем так...
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38685773
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mv,

Это мощно.
Я не осилил.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686093
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 01.07.2014 15:44, FreemanZAV wrote:

> Ну я бы не сказал.
> Например в mssql нет пакетов

Пакеты эти ваши хвалёные нахрен не нужны.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686094
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivПакеты эти ваши хвалёные нахрен не нужны.
Наши хвалёные базы данных, кстати, тоже не нужны. Любой приличный программист напишет куда более эффективную собственную реализацию для чтения-записи форматированных данных из файла/файлов.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686102
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mvА я грешным делом (почему-то) предполагал, что если кто-то что-то говорит/пишет, этот кто-то пишет/говорит о том, о чем думает и то, что об этом думает... Но оказалось, что для некоторых это не совсем так...Писать/говорить могут не только лишь все, мало кто может это делать
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686120
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivOn 01.07.2014 15:44, FreemanZAV wrote:

> Ну я бы не сказал.
> Например в mssql нет пакетов

Пакеты эти ваши хвалёные нахрен не нужны.


Да, в такую погоду лучше пивка
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686174
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAVДа, в такую погоду лучше пивка

А под пивко можно обсудить следующий вопрос. По какому принципу в Oracle "принято" заворачивать функционал в один пакет, при условии невозможности разграничения прав доступа на функционал внутри пакета?
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686183
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinА под пивко можно обсудить следующий вопрос. По какому принципу в Oracle "принято" заворачивать функционал в один пакет, при условии невозможности разграничения прав доступа на функционал внутри пакета?
Это довольно бессмысленный вопрос, примерно аналогичный "а по какой схеме в Аргентине принято играть в футбол?"

Есть разные подходы. Для примера, давайте предположим, что мы должны реализовать две бухгалтерские операции, приход и расход. Нередко их пишут в один пакет и грантуют бухгалтеру, явно или неявно подразумевая "нам не потребуется давать право только на одну из них". Бухгалтер имеет к ним доступ, секретарша - нет. Если ставим задачу дать доступ только на приход - куча вариантов на выбор. Например, пользователю грантуется только таблица прихода, но не расхода (что, собственно, должно быть независимо от пакета), а пакет выполняется с правами пользователя - вуаля, доступ к процедуре "расход" у него есть, но радости ему с того никакой. Если мы хотим выполнять пакет с правами создателя, то обычно происходит разделение на интерфейс и реализацию. Делается недоступный снаружи пакет "бухгалтерия", реально выполняющий необходимые операции, плюс те или иные оболочки, которые и грантуются пользователям. Альтернативно, никто не мешает воспользоваться row-level security, опять же зарезать пользователю возможность работать с недоступными ему данными. В случае бухгалтерии это, наверное, наиболее частый подход в серьёзной работе, потому что необходимо делать бизнес-логику типа "бухгалтеру доступны только некоторые юр.лица", "доступны только операции до 10.000.000 рублей" итп. Хотя некоторые кривые люди, конечно, будут делать такое непосредственно в коде.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686187
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

Ну и ещё, как вариант, можно свою ACL систему организовать.
Спорный подход, но имеет место быть
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686189
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAV, ну, сомнительных подходов всяко более одного. Можно даже делать как в MSSQL.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686191
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklin,

Можно много говорить, что пакеты не нужны, но когда начинаешь пользоваться, понимаешь все преимущества.

Причём пакеты, это не только способ организации функций и процедур. В них можно хранить в оперативной памяти всякую фигню. Тоже спорно, но иногда очень удобно.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686199
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

авторЭто довольно бессмысленный вопрос, примерно аналогичный "а по какой схеме в Аргентине принято играть в футбол?"

Вопрос, всё-таки носил практический смысл. Сожалею, что дополнительно этого не указал и допустил возможность различных толкований.

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

Начну с того, что считаю в принципе недопустимым раздачу прямых грантов пользователям на таблицы. И позволю себе привести другой пример. Маркетинговая акция - т.е. некая активность, при выполнении условий которой клиент получает определенные бенефиты. Как легко себе представить маркетинговая акция - это не одна таблица. И нужно решить простую задачу. Разрешить заводить маркетинговые акции рядовым менеджерам дирекции по маркетингу, но включать\выключать акцию дать возможность только определенному кругу лиц. Я правильно понимаю, что я должен иметь как минимум два пакета? Первый - отвечающий за создание и модификацию акций, второй - за включение\выключение их? Рядовым менеджерам грантовать только первый, "определенному кругу лиц" - оба?

Теперь, если я захочу разделить права на просмотр\модификацию акций межу разными группами рядовых менеджеров, что я должен сделать? Создать отдельно пакеты, в которых будет код только на модификацию\только на просмотр? Опять грантовать кому один, а кому два, а "определенному кругу лиц" все три?

авторАльтернативно, никто не мешает воспользоваться row-level security, опять же зарезать пользователю возможность работать с недоступными ему данными.

Нет, нет. Мой вопрос не касался row-level security, которая "встроена в Oracle" и которая реализуется с помощью дополнительных телодвижений в MS SQL. Вопрос касался именно прав на выполнение того или иного функционала в виде хранимого серверного кода.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686201
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAVМожно много говорить, что пакеты не нужны

Я этого не говорил.

FreemanZAVпонимаешь все преимущества

Вот я и пытаюсь их понять. При этом не забыв про недостатки.

FreemanZAVПричём пакеты, это не только способ организации функций и процедур. В них можно хранить в оперативной памяти всякую фигню.

По-моему это уже мы как-то обсуждали? О хранении "всякой фигни". Если я не прав, то можно Вас попросить какой-нибудь пример?
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686208
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAVНу и ещё, как вариант, можно свою ACL систему организовать.

Ни есть ли Oracle Database Vault "своя система ACL"? Если в другой СУБД для реализации каждый раз нужен строго определенный и ограниченный набор объектов, будет ли эта реализация чем-то отличаться от "своей системы ACL" в Oracle?
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686212
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinНачну с того, что считаю в принципе недопустимым раздачу прямых грантов пользователям на таблицы.
Пожму плечами. В некоторых древних системах и использование SQL считалось недопустимым.

pkarklinВопрос, всё-таки носил практический смысл
Позволю себе предположить, что вопрос носил характер "как таки действовать в редком случае бесконечного дробления прав на элементарные действия". Что я хотел бы донести, так это то, что вопрос перпендикулярен понятию пакетов. Та проблема, в которую Вы пытаетесь их загнать, возникнет и на Вашей любимой СУБД, как только я спрошу "как мне програнтовать Васе возможность выполнить ХП с параметром А и при этом не давать выполнить ту же ХП с параметром Б". Разница в том, что в Oracle её можно решить, не теряя преимуществ пакетов. Например, если Вы хотите грантовать одиночные процедуры - я за пару минут напишу код, который будет пробегать по установленным пакетам и для каждой процедуры A из пакета Б создавать хранимку Б_А, её вызывающую. Как раздать гранты, надеюсь, пояснять не надо. То, что удобство программирования при этом не теряется - надеюсь, тоже.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686222
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

авторПожму плечами. В некоторых древних системах и использование SQL считалось недопустимым.

Не совсем понял суть высказывания. Т.е. Вы считаете "это" допустимым? Под "это" я понимаю возможность обхода конечным пользователем заложенной в серверный код бизнес-логики в случае наличии прямого доступа к таблицам.

авторПозволю себе предположить, что вопрос носил характер "как таки действовать в редком случае бесконечного дробления прав на элементарные действия".

Вопрос носил характер вполне обычного ролевого разграничения прав доступа. Мы же о бизнес-логике говорим? Т.е. о бизнес-процессах, а там действия выполняют роли, а не пользователи, таблицы, или пакеты.
авторЧто я хотел бы донести, так это то, что вопрос перпендикулярен понятию пакетов.

Мне казалось, я задал вполне конкретный вопрос о прикладном функционале пакетов.

авторТа проблема, в которую Вы пытаетесь их загнать


Никого я никуда не пытаюсь загнать. Я обрисовал задачу и спросил, правильно ли я понимаю, как я должен использовать пакеты. Ответа, кстати, я так и не получил, прав я или нет в своих выводах.

авторкак только я спрошу "как мне програнтовать Васе возможность выполнить ХП с параметром А и при этом не давать выполнить ту же ХП с параметром Б". Разница в том, что в Oracle её можно решить, не теряя преимуществ пакетов. Например, если Вы хотите грантовать одиночные процедуры - я за пару минут напишу код, который будет пробегать по установленным пакетам и для каждой процедуры A из пакета Б создавать хранимку Б_А, её вызывающую. Как раздать гранты, надеюсь, пояснять не надо. То, что удобство программирования при этом не теряется - надеюсь, тоже.

Не совсем понял, причем тут "за пару минут напишу код"?! Я сейчас не веду речь о каких-то workaroundах. Я о стандартном функционале веду речь.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686225
Yo.!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklinНачну с того, что считаю в принципе недопустимым раздачу прямых грантов пользователям на таблицы. И позволю себе привести другой пример. Маркетинговая акция - т.е. некая активность, при выполнении условий которой клиент получает определенные бенефиты. Как легко себе представить маркетинговая акция - это не одна таблица. И нужно решить простую задачу. Разрешить заводить маркетинговые акции рядовым менеджерам дирекции по маркетингу, но включать\выключать акцию дать возможность только определенному кругу лиц. Я правильно понимаю, что я должен иметь как минимум два пакета? Первый - отвечающий за создание и модификацию акций, второй - за включение\выключение их? Рядовым менеджерам грантовать только первый, "определенному кругу лиц" - оба?

нет. вы должны иметь отдельный пакет который проверит, что может и чего не может ваш юзер. для всех пакетов которые может дернуть пользователь делайте отдельный service layer - пакеты обертки вокруг пакета marketing_api. обертка все и проверит. у меня эти обертки автоматом генерируюся самопальной тулзой (процедуркой).
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686226
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinFreemanZAVМожно много говорить, что пакеты не нужны

Я этого не говорил.

FreemanZAVпонимаешь все преимущества

Вот я и пытаюсь их понять. При этом не забыв про недостатки.

FreemanZAVПричём пакеты, это не только способ организации функций и процедур. В них можно хранить в оперативной памяти всякую фигню.

По-моему это уже мы как-то обсуждали? О хранении "всякой фигни". Если я не прав, то можно Вас попросить какой-нибудь пример?

Честно - нет никакого желания ничего объяснять.
Да и вряд ли какие-либо объяснения имеют смысл.

Я считаю, что пакеты - это правильная организация кода.
Несогласные найдут десятки аргументов, парировать каждый - это очень трудоёмко.

В oracle есть ещё и объекты, которые я считаю тоже неплохим решением, хотя почему-то их мало используют
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686229
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinFreemanZAVНу и ещё, как вариант, можно свою ACL систему организовать.

Ни есть ли Oracle Database Vault "своя система ACL"?

Ничего не могу сказать, почитайте документацию
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686233
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAV,

авторЧестно - нет никакого желания ничего объяснять.

авторНичего не могу сказать, почитайте документацию

Спасибо! Ваша позиция понятна.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686240
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinFreemanZAV,

авторЧестно - нет никакого желания ничего объяснять.

авторНичего не могу сказать, почитайте документацию

Спасибо! Ваша позиция понятна.

Ну я никак не могу, при всём желании, объяснить лучше, чем документация.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686242
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!,

авторнет. вы должны иметь отдельный пакет который проверит, что может и чего не может ваш юзер. для всех пакетов которые может дернуть пользователь делайте отдельный service layer - пакеты обертки вокруг пакета marketing_api. обертка все и проверит

Я правильно понимаю, что это построение "своего" ACL над имеющейся системой разграничения прав доступа сервера?
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686245
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAVНу я никак не могу, при всём желании, объяснить лучше, чем документация.

Если бы всё можно было бы черпать из учебников, то зачем нужны учителя?!
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686247
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinFreemanZAVНу я никак не могу, при всём желании, объяснить лучше, чем документация.

Если бы всё можно было бы черпать из учебников, то зачем нужны учителя?!

Учителя нужны, но я, лично, педагог плохой.
Для педагога самое главное - терпение, а у меня его нет.
...
Рейтинг: 0 / 0
Разница SQL синтаксиса в MSSQL и Oracle
    #38686285
PetrovVA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FreemanZAVsoftwarer,

Ну и ещё, как вариант, можно свою ACL систему организовать.
Спорный подход, но имеет место бытьOracle. Fine grained access control .
...
Рейтинг: 0 / 0
25 сообщений из 125, страница 3 из 5
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Разница SQL синтаксиса в MSSQL и Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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