powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / PL/SQL vs.Transact SQL
25 сообщений из 395, страница 2 из 16
PL/SQL vs.Transact SQL
    #35944795
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuperpkarklin
А мне вот больше нравится так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
--объявление поскипано
--тут присвоение значений, которое может быть:
--выборкой
--вызовом функции
--простым присовение
--вычислением
--комбинацией всего вышеописанного
--причем при "вытаскивании" каждого из значений может понадобится его доп. обработка или генерация ошибки
exec dbo.ItemOrderAdd
	@ID		= @ID out,
	@ObjectTypeSysName = 'ItemOrder',
	@OwnerObjectID	= @PersonID,
	@Descript	= @Comment,
	@Date		= @Date,
	@Num		= @Number,
	@PersonID	= @PersonID,
	@PayModeID	= @PayModeID,
	@ItemPriceSum	= @ItemPriceSum,
	@DeliveryPrice	= @DeliveryPrice,
	@ClientAccountPayment = @ClientAccountPayment,
	@PayPropsID	= @PayPropsID
И теперь представим, что все это (описанное выше собственно вызова) будет запихоно в правую часть присвоения. IMHO, приведенный вариант "длиннее", но "читабельнее".
На мой взгляд - анахронизм
например очень часто хочется
Код: plaintext
1.
2.
exec dbo.ItemOrderAdd
...
	@Num		= @Number +  1 

Ни в коем разе!!! Это уже абсолютно избыточно и ни на фиг не нужно для программирования БД
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35944796
ддддд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А мне нравится

Код: plaintext
proc(param1,param2,param1+param2);
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35944816
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuperНа мой взгляд - анахронизм
например очень часто хочется
Код: plaintext
1.
2.
exec dbo.ItemOrderAdd
...
	@Num		= @Number +  1 


Ой, если бы все так просто было бы - "+1".
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35944842
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAVДа это понятно, когда есть только один вариант, он волей-неволей будет нравиться

Во всяком случае, он не вызывает у меня отвращения.
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35944852
FreemanZAV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinFreemanZAVДа это понятно, когда есть только один вариант, он волей-неволей будет нравиться

Во всяком случае, он не вызывает у меня отвращения.
Ну естественно, ведь это же лажа от самого MS
Модератор: попросил бы задумываться немного прежде чем писать
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35944886
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreemanZAVНу естественно, ведь это же лажа от самого MS

Ну, понятно... Дальше можете не продолжать...
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35944904
aZm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ддддддВ Oracle в ХП нельзя создать временную таблицу и потом убить ее.
(конечно, если сильно захотеть, то можно, но этого никто не делает)

эммм. это вы намекаете на "невозможность" применения ddl в рамках хранимого кода? бросьте, это как раз возможно, но полностью лежит на совести разработчика :) execute immediate, не говоря уж о dbms_sql, позволяет выполнить много что, причем без всяких танцев с бубном и "сильного хотения". другое дело, что реально такие вещи требуются не часто, в оракле мощный диалект sql - и он позволяет обойтись без формирования времянок на каждый чих.

ps. давно мечтаю, чтобы в рамках конструкции with ... /*+ materialize */ можно было сказать - а проиндексируй-ка мне, дружище, этот самый with по таким то полям ;)
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35944956
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aZmддддддВ Oracle в ХП нельзя создать временную таблицу и потом убить ее.
(конечно, если сильно захотеть, то можно, но этого никто не делает)

эммм. это вы намекаете на "невозможность" применения ddl в рамках хранимого кода? бросьте, это как раз возможно, но полностью лежит на совести разработчика :) execute immediate, не говоря уж о dbms_sql, позволяет выполнить много что, причем без всяких танцев с бубном и "сильного хотения". другое дело, что реально такие вещи требуются не часто, в оракле мощный диалект sql - и он позволяет обойтись без формирования времянок на каждый чих.

ps. давно мечтаю, чтобы в рамках конструкции with ... /*+ materialize */ можно было сказать - а проиндексируй-ка мне, дружище, этот самый with по таким то полям ;)
неужели Вам никогда не хотелось использовать данные, которые хранятся в массиве, прямо в запросе?
Да хоть какой не будь мощный диалект - если у вас процедура из тысяч строк - в любом случае хотя бы для отладки надо смотреть промежуточные результаты

На мой взгляд отсутствие таблиц-переменных в Оракле - такой же анахронизм примерно как и приведённый выше вызов процедур в TSQL. Не сомневаюсь что когда-нибудь они в Оракле будут.
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945062
Пилот Пиркс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuperнеужели Вам никогда не хотелось использовать данные, которые хранятся в массиве, прямо в запросе?
В оракле это возможно и без промежуточных таблиц. :)
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945093
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пилот ПирксSergSuperнеужели Вам никогда не хотелось использовать данные, которые хранятся в массиве, прямо в запросе?
В оракле это возможно и без промежуточных таблиц. :)очевидно у нас "это" очень разное
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945122
ддддд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Чтобы не разводить ненужный флейм

http://sql.ru/forum/actualthread.aspx?tid=650533
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945130
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дддддЧтобы не разводить ненужный флейм

http://sql.ru/forum/actualthread.aspx?tid=650533

Баян. Даже в этом топике. ;)
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945148
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пилот ПирксSergSuperнеужели Вам никогда не хотелось использовать данные, которые хранятся в массиве, прямо в запросе?
В оракле это возможно и без промежуточных таблиц. :)
или лучше так: а что такого есть в оракле что он позволяет делать это именно без промежуточных таблиц?

на самом деле ничего особо принципиального и нет
просто в TSQL таблицы переменные есть и ими удобно пользоваться и ими пользуются, а вот оракловцы считают что они не нужны

с другой стороны в TSQL нельзя в процедуре как параметр задавать выражение и pkarklin считает что только так и нужно

психология, не более
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945156
надо же
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FreemanZAVМодератор: попросил бы задумываться немного прежде чем писатьа модератору можно посоветовать не забывать о своей роли модератора.
WikipediaТермин «модератор» отражает права, но не поведение лица, наделённого этими правами. Теоретически, модератор отвечает за соблюдение пользователями установленных норм поведения. Однако недобросовестные модераторы стирают сообщения или банят пользователей по своему произволу. Такое поведение, как правило, наказывается администрацией.Не сваливайтесь в администрирование, плиз.
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945159
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuperпсихология, не более
Не совсем так. Как минимум, "из стана MSSQL" часто шли утверждения, что разбиение сложного запроса на несколько стадий с хранением промежуточных результатов - необходимо для обеспечения производительности. Присутствующий здесь pkarklin в своё время говорил мне примерно так: да я видел такие запросы, что сервер только план для них будет строить несколько минут.
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945169
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerПрисутствующий здесь pkarklin в своё время говорил мне примерно так: да я видел такие запросы, что сервер только план для них будет строить несколько минут.

Подтверждаю. Более того, в приведенном по ссылке чуть выше топике я приводил пример (правда там распределенные запросы), когда разбиение одного запроса на несколько с участием промежуточной временной таблицы может сильно упростить работу оптимизатору и поднять общую производительность.
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945188
ддддддд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklinупростить работу оптимизатору .

Каюсь, никогда не задумывался над тем как тяжко приходится оптимизатору, чтобы разобрать мои запросы...
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945198
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надо жеFreemanZAVМодератор: попросил бы задумываться немного прежде чем писатьа модератору можно посоветовать не забывать о своей роли модератора.
WikipediaТермин «модератор» отражает права, но не поведение лица, наделённого этими правами. Теоретически, модератор отвечает за соблюдение пользователями установленных норм поведения. Однако недобросовестные модераторы стирают сообщения или банят пользователей по своему произволу. Такое поведение, как правило, наказывается администрацией.Не сваливайтесь в администрирование, плиз.
Модератор: уважаемый аноним, меня мало интересуют толкование терминов и Ваши советы, если что-то не устраивает - есть кнопка "пожаловаться модератору", но только пишите конкретные претензии, а не общие соображения на тему
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945201
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дддддддКаюсь, никогда не задумывался над тем как тяжко приходится оптимизатору , чтобы разобрать мои запросы...

Дело не в "разобрать", в в "построить оптимальный план".
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945209
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дддддддpkarklinупростить работу оптимизатору .

Каюсь, никогда не задумывался над тем как тяжко приходится оптимизатору, чтобы разобрать мои запросы...только потому что не было возможности ему помочь
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945231
Senya_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuper,

буду конкретней. если бы высказывание FreemanZAV относилось к СУБД отличной от MSSQL, то сомневаюсь, что Вы бы высказали свое мнение. из Вашего профиля это следует. А указать на глупость (если таковая и была) я думаю хватит и так желающих. у Вас есть роль обычного пользователя, так бы и высказали, а не модераторскими вставками.

автор"пожаловаться модератору"Это кому? Вам же на Вас же?
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945239
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerSergSuperпсихология, не более
Не совсем так. Как минимум, "из стана MSSQL" часто шли утверждения, что разбиение сложного запроса на несколько стадий с хранением промежуточных результатов - необходимо для обеспечения производительности. Присутствующий здесь pkarklin в своё время говорил мне примерно так: да я видел такие запросы, что сервер только план для них будет строить несколько минут.
тем не менее такие запросы бывают (хотя я не видел) и их надо как-то выполнять
у pkarklin-а есть возможность выполнить их за приемлиемое время с использованием временных таблиц, Вы очевидно другой способ найдёте, не факт что он будет проще
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945254
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSupersoftwarerSergSuperпсихология, не более
Не совсем так. Как минимум, "из стана MSSQL" часто шли утверждения, что разбиение сложного запроса на несколько стадий с хранением промежуточных результатов - необходимо для обеспечения производительности. Присутствующий здесь pkarklin в своё время говорил мне примерно так: да я видел такие запросы, что сервер только план для них будет строить несколько минут.
тем не менее такие запросы бывают (хотя я не видел) и их надо как-то выполнять
у pkarklin-а есть возможность выполнить их за приемлиемое время с использованием временных таблиц, Вы очевидно другой способ найдёте, не факт что он будет проще
Мм.. прошу прощения за оверквотинг, но оставить его необходимо, чтобы показать причудливый путь мысли. И заодно проиллюстрировать одну из любимых моих тенденций в такого рода беседах.

Вы сказали: психология, не более.
Я хочу опровергнуть это утверждение.
Для этого я привёл пример, когда "производительность, а вовсе не психология".

И Вы мгновенно забываете про "психологию" и бросаетесь доказывать, что в Оракле будет не лучше
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945264
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Senya_LSergSuper,

буду конкретней. если бы высказывание FreemanZAV относилось к СУБД отличной от MSSQL, то сомневаюсь, что Вы бы высказали свое мнение. из Вашего профиля это следует. А указать на глупость (если таковая и была) я думаю хватит и так желающих. у Вас есть роль обычного пользователя, так бы и высказали, а не модераторскими вставками.

автор"пожаловаться модератору"Это кому? Вам же на Вас же?
давайте судить не по профилю, а по высказываниям
что касается FreemanZAV то это замечание по савокупности, например тут была на него жалоба, но я уже поздно сообразил

писать вставками или еще как...
да хрен его знает как лучше, как написал так написал, что придираться то?
вобще странно - один хамит, а претензии к тому кто ему замечание делает
...
Рейтинг: 0 / 0
PL/SQL vs.Transact SQL
    #35945288
Yo.!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SergSuper
тем не менее такие запросы бывают (хотя я не видел) и их надо как-то выполнять
у pkarklin-а есть возможность выполнить их за приемлиемое время с использованием временных таблиц, Вы очевидно другой способ найдёте, не факт что он будет проще
тридцать второй раз спрашиваю, что лично вам мешает хранить промежуточные результаты в оракловых GTT ? вроде ж 31 раз уже только с вашим участием перетерли ...
...
Рейтинг: 0 / 0
25 сообщений из 395, страница 2 из 16
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / PL/SQL vs.Transact SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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