Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6 7 8 9 10 11   вперед  Ctrl      все
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Dimitry Sibiryakov
locky
"правильная СУБД" уже научилась делать UPDATE FROM?

А "неправильная СУБД" уже согласилась понимать-таки стандартный MERGE вместо треугольных
велосипедов?..


Что, адын-адын, получается?

Хотя, как по мне, UPDATE FROM куда востребованнее MERGE.

зы это еще надо посмотреть, что там "правильная СУБД" требует для MERGE.... А то вдруг опять надо контракт кровью подписывать :)
21 мар 12, 18:32    [12290602]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
SQL Bigot
Member

Откуда:
Сообщений: 841
locky
"правильная СУБД" уже научилась делать UPDATE FROM?

Так вот на пальцах и умозрительно не скажу, но, возможно, в данном случае правильнее использовать MERGE.
Конкретный пример в конференцию оракл - и там его, наверняка, порвут :)
21 мар 12, 18:38    [12290642]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
SQL Bigot
locky
"правильная СУБД" уже научилась делать UPDATE FROM?

Так вот на пальцах и умозрительно не скажу, но, возможно, в данном случае правильнее использовать MERGE.
Конкретный пример в конференцию оракл - и там его, наверняка, порвут :)

Ну, вообще-то, там где нужен UPDATE - там правильнее использовать UPDATE
Хотя можно использовать и MERGE - как "костыль" и workaround :)

примеры и обсуждения уже были. "ты дурак и уши у тебя холодные. Пиши как здесь принято - пусть даже это дико и косо. В любом случае - по другому не получится. Ну или используй курсоры"
21 мар 12, 18:42    [12290676]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54822

locky
"Ну или используй курсоры"

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

Posted via ActualForum NNTP Server 1.5

21 мар 12, 18:47    [12290699]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
Yo.!
Guest
locky

Что, адын-адын, получается?

Хотя, как по мне, UPDATE FROM куда востребованнее MERGE.

для лабания говнокода - безусловно
21 мар 12, 18:50    [12290708]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pt12pt
Member

Откуда:
Сообщений: 183
Yo.!
locky
Что, адын-адын, получается?

Хотя, как по мне, UPDATE FROM куда востребованнее MERGE.

для лабания говнокода - безусловно



А можете написать где в этой конструкции говнокод. Я без издевки, я серьезно, напишите в чем там проблема.
21 мар 12, 18:51    [12290720]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Dimitry Sibiryakov
locky
"Ну или используй курсоры"

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

тото адепты "правильной СУБД" так их любят! На "правильной СУБД" - они быстрые!
21 мар 12, 18:57    [12290751]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Yo.!
locky
Что, адын-адын, получается?

Хотя, как по мне, UPDATE FROM куда востребованнее MERGE.

для лабания говнокода - безусловно

Угу. UPDATE же это - прошлый век, негломурно
правильные посоны только MERGE юзают. И курсоры :)
21 мар 12, 18:58    [12290758]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
Yo.!
Guest
pt12pt

А можете написать где в этой конструкции говнокод. Я без издевки, я серьезно, напишите в чем там проблема.

в мсскл большой косяк в конструкции update from, если в результате джоина во фром на одну обновляемую запись приходиться несколько разных значений мсскл берет от балды одно из них и делает update. классика говнокода.
21 мар 12, 19:28    [12290933]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Yo.!
pt12pt
А можете написать где в этой конструкции говнокод. Я без издевки, я серьезно, напишите в чем там проблема.

в мсскл большой косяк в конструкции update from, если в результате джоина во фром на одну обновляемую запись приходиться несколько разных значений мсскл берет от балды одно из них и делает update. классика говнокода.

В оракуле косяк.
Если оракул не может толком разобраться - сколько записей будет проадечено, он говорит "а вдруг ты отстрелишь себе ногу?" - и не пропускает такой запрос.
Классика, что называется.


если я правильно помню, то в оракуле даже update виде
update T1
set Val = t2.val
from Table1 t1 inner join (select id, sum(val) as val from Table2 group by id) t2 on t1.id = t2.id

считается "некошерным", т.к. "на каждый id из таблицы Table1 подзапрос может вернуть несколько строк" :)
21 мар 12, 19:41    [12290999]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
SQL Bigot
Давай проследим вместе:
ты сказал, что each row триггер не нужен, пример я привел, когда нужен, ты сказал, как можно обойти, я поверил на слово :)
Вывод:триггер иногда нужен(да,нужен триггер), но можно обойти(да,можно обойти).
Означает ли последнее утверждение, что триггер не нужен?


Давай вместе... Ты сказал про триггер, locky, намекнул, что, как-бы сам по себе триггер, как бы и не причем вне контекста автономной транзакции, ты сказал, что он тебя опередил (и даже отболдил), я сказал, как можно реализовать автономные транзакции, и даже потдвердил, что их (автономных транзакций) реализация в MS SQL требует "дополнительных движений".

А теперь вопрос: причем тут триггер? И где конкретный пример, где без оного (про автономные транзакции мы точки уже над "и" расставили?), кроме как случая модификации PK, не обойтись?

ЗЫ. Дима, привел пример, но, как обычно, неудачный...
21 мар 12, 19:53    [12291075]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dimitry Sibiryakov
Не
удивлюсь, если у него и ссылочная целостность работает через раз.


Ага, и PK у MS SQL не гарантируют уникальность и 2 + 2 = 5.

ЗЫ. Самому не смешно?
21 мар 12, 19:55    [12291083]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pt12pt
Member

Откуда:
Сообщений: 183
Yo.!
pt12pt
А можете написать где в этой конструкции говнокод. Я без издевки, я серьезно, напишите в чем там проблема.

в мсскл большой косяк в конструкции update from, если в результате джоина во фром на одну обновляемую запись приходиться несколько разных значений мсскл берет от балды одно из них и делает update. классика говнокода.


Вы точно в этом уверены? Может быть СУБД ругнется мол несколько значений для обновления. И отказ в транзакции. Или нет?
21 мар 12, 19:56    [12291088]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
SQL Bigot
Так вот на пальцах и умозрительно не скажу, но, возможно, в данном случае правильнее использовать MERGE.


Дык и используем мы его. Года 4ре последних... Но для более сложных конструкций, чем UPDATE.
21 мар 12, 19:56    [12291089]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
pt12pt
Или нет?


И это документированное поведение. Но только Yo.! даже документированное поведение называет косяками... :)
21 мар 12, 19:59    [12291100]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67525
Блог
pt12pt
Еще привести примеры как вас добить?
например как вызывав процедуру, которая заканчивается селектом получить резальтсет? В MS это реализовано, а в Оракле надо сначала объявить курсор...

Это не "добить", это что-то вроде "как выполнить оператор INSERT так, чтобы в результате получился DELETE". То есть проктологическое решение уровня ЭВМ 3-го поколения.
21 мар 12, 19:59    [12291104]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dimitry Sibiryakov
После того тормозного убожества, которое MS называет "курсорами", с помощью этого слова их
адептов можно отпугивать не хуже чем вампиров чесноком.


Тормознутости по сравнению с чем? Есть тесткей для сравнения?
21 мар 12, 20:02    [12291114]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
pt12pt
Yo.!
пропущено...

в мсскл большой косяк в конструкции update from, если в результате джоина во фром на одну обновляемую запись приходиться несколько разных значений мсскл берет от балды одно из них и делает update. классика говнокода.


Вы точно в этом уверены? Может быть СУБД ругнется мол несколько значений для обновления. И отказ в транзакции. Или нет?

не ругнётся.
21 мар 12, 20:03    [12291118]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
Yo.!
Guest
pkarklin
И это документированное поведение. Но только Yo.! даже документированное поведение называет косяками... :)

попрошу не наговаривать на Yo.! я не утверждал что это косяк, я утверждал, что это классический говнокод. и междупрочим совершенно справедливо утверждал.

pt12pt
Вы точно в этом уверены? Может быть СУБД ругнется мол несколько значений для обновления. И отказ в транзакции. Или нет?


потратте 30 секунд на эксперимент и убедитесь.
21 мар 12, 20:04    [12291125]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pt12pt
Member

Откуда:
Сообщений: 183
softwarer
pt12pt
Еще привести примеры как вас добить?
например как вызывав процедуру, которая заканчивается селектом получить резальтсет? В MS это реализовано, а в Оракле надо сначала объявить курсор...

Это не "добить", это что-то вроде "как выполнить оператор INSERT так, чтобы в результате получился DELETE". То есть проктологическое решение уровня ЭВМ 3-го поколения.


Можете поконкретнее. В MS вы создаете хранимую процедуру, которая чего-нибудь делает, в конце тела процедура у вас есть итоговый селект. Затем в где-нибудь в другом месте вызываете ее оператором exec с именем и параметрами и после выполнения ее вы получаете результирующий набор. Что здесь проктологического? В Оракле же мало того, что используется специальный язык, ну бог с ним вам необходимо объявить курсорную переменную, заполнить ее данными и вернуть потребителю эту курсорную переменную. Как-то так если я не ошибаюсь. По-моему это и есть проктологизм.
21 мар 12, 20:06    [12291139]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pt12pt
Member

Откуда:
Сообщений: 183
locky
pt12pt
пропущено...


Вы точно в этом уверены? Может быть СУБД ругнется мол несколько значений для обновления. И отказ в транзакции. Или нет?

не ругнётся.


А что он сделает? Запишет как попало?
21 мар 12, 20:06    [12291143]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67525
Блог
pkarklin
И это документированное поведение.

Ну, кривой и противоречащий стандарту unique constraint - это тоже документированное поведение. А в FoxPro, например, в запросе с group by можно было использовать "левое" поле и тоже бралось то ли первое попавшееся значение, то ли последнее - это тоже было документированным поведением.

pkarklin
Но только Yo.! даже документированное поведение называет косяками... :)

В данном случае правильно делает. Бага не перестаёт быть багой от того, что её записали в документацию.
21 мар 12, 20:07    [12291144]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
pt12pt
Можете поконкретнее...


Данная проблематика уже обсуждалась в этом разделе форума. Поищите, пожалуйста, там несколько страниц.
21 мар 12, 20:08    [12291147]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
pt12pt
А что он сделает? Запишет как попало?


Запишет произвольным значеним из "подпавших под условие объединения".
21 мар 12, 20:11    [12291161]     Ответить | Цитировать Сообщить модератору
 Re: Чем MS SQL Server хуже Oracle Database?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
softwarer
Ну, кривой и противоречащий стандарту unique constraint - это тоже документированное поведение. А в FoxPro, например, в запросе с group by можно было использовать "левое" поле и тоже бралось то ли первое попавшееся значение, то ли последнее - это тоже было документированным поведением.

ну, в сайбейзе, например, с group by - чудеса тоже те еще :)

а насчет "противоречащий стандарту" - главное чтобы не противоречило здравому смыслу и потребностям, остальное - от лукавого.
21 мар 12, 20:17    [12291191]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6 7 8 9 10 11   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить