powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Весомый плюс Юкон над ORACLE
25 сообщений из 200, страница 8 из 8
Весомый плюс Юкон над ORACLE
    #32837556
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор Да и в остальном - осмысленности не много, но это моё личное мнение.
я что то не пойму в чем смысл вашей осмысленности?
Если мне надо дополнительная бизнес-логика в процедуре я допишу ее.
я просто показал что не трачу время на рутиную работу связанной с созданием сигнатуры и хп и типичных действий выполняемых хп.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837564
Фотография www.fun4me.narod.ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> я что то не пойму в чем смысл вашей осмысленности?

У Вас процедура неправильная. Только и всего.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837579
AAron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нда...
Что вы сцепились из-за физиков и юриков? Ступайте в Проектирование и разбирайте там способы решения конкретной задачи.

Без конкретной задачи не может быть и конкретного решения.

Кастельно темы.
Мне понравились вот такие новые фукнции в TSQL в Юконе.
RANK ()

DENSE_RANK ()

ROW_NUMBER ()

NTILE ()

Интересно например сравнить с аналогичными функциями в Оракле, сравнить насколько удачно или неудачно они реализованы.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837587
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to www.fun4me.narod.ru


create procedure #bad_generated_code1
as
begin
begin transaction
select 1/0
if @@trancount>0 rollback transaction
end
go

create procedure #bad_generated_code2
as
begin
begin transaction
exec #bad_generated_code1
select @@error
if @@trancount>0 rollback transaction
end


exec #bad_generated_code2


-----------
266

(1 row(s) affected)
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837606
Фотография www.fun4me.narod.ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
/*-----------------------------

exec #bad_generated_code2

-----------------------------*/
Server: Msg 8134, Level 16, State 1, Procedure #bad_generated_code1____________________________________________________________________________________________________000002A8, Line 5
Divide by zero error encountered.
            
----------- 
0

(1 row(s) affected)

...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837617
nkulikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть такая поговорка, то что нового появляется в DB2 переходит в стандарт SQL.... Шутка...
RANK ()
DENSE_RANK ()
ROW_NUMBER ()
NTILE ()

По поводу этих функций все хорошо в меру.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837632
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerА что, у вьюхи в MS SQL есть какой-то фиксированный план? Немного странная концепция, имхо...Не верьте, при построении плана запроса, view раскрываются, если только план view жестко не зафиксирован хинтами.
tygraНу не знаю лично, есть ли план у вьюхи, но то, что если в выборках использовать вьюху, и не одну, то очень часто бывает, что вдруг слетают планы у ХП и именно из-за вьюхи, да и вообще непредсказуемо поведение. Ну это на достаточно сложных вьюхах, больше 2-х таблиц с некоторыми параметрами. На простых вроде ничего.Мне почему-то казалось, что Вы лучше разбираетесь в MS SQL. Как иногда говорят, с такими друзьями и врагов не надо :)
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837634
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не, не будем флеймить! Тут по крайней мере!!!

Давайте все же новый топик создадим и там по поводу юриков/физиков и написания ХП разберемся.


-- Tygra's --
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837643
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Один мой знакомый, очень мной уважаемый человек из Sybase говорил, что когда он допрашивает нового кандидата на каку-нить вакансию у него первый вопрос - когда и в каких случаях Sybase пересматривает планы запросов у ХП.
Я не думаю что в этом плане MSSQL далеко ушел от своего родителя...
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837653
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНе верьте, при построении плана запроса, view раскрываются, если только план view жестко не зафиксирован хинтами.
Я это понимаю, но факт есть факт, если сложная вьюха, то тормоза обеспечены.

авторМне почему-то казалось, что Вы лучше разбираетесь в MS SQL. Как иногда говорят, с такими друзьями и врагов не надо :)
На фиг враги - тут столько друзей :))
Я, если честно, во внутренностях выполнения запросов и т.д. не слишком то разбираюсь, так сказать в технической части. Но пока нет ни времени, ни охоты начинать - я не претендую на роль дба или гуру, просто есть некоторая часть опыта, позволяющая достаточно хорошо писать ХП. Остальное время уходит на разработку архитектуры (к счастью она не сильно зависит от знаний конкретной БД :)) + вообще много непрограммистской работы (не компьютерной, организационной так сказать). Но пока устраивает - меня не привлекает "маньячество" :) в программировании. Просто именно эта работа дает возможность зарабатывать деньги и ..... весело проводить время :))

-- Tygra's --
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837655
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторОдин мой знакомый, очень мной уважаемый человек из Sybase говорил, что когда он допрашивает нового кандидата на каку-нить вакансию у него первый вопрос - когда и в каких случаях Sybase пересматривает планы запросов у ХП.

А если бы еще знать, почему они слетают (на MS SQL), тогда вообще было прекрасно :))

-- Tygra's --
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837665
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 tygra
Каждый вопрос содержит часть ответа)
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837669
Фотография www.fun4me.narod.ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Роман Дынник.

Извиняюсь за оффтопик, но как вы получили ошибку 266 (Transaction count after EXECUTE indicates that a COMMIT or ROLLBACK TRANSACTION statement is missing. Previous count = %ld, current count = %ld.) - можете объяснить? А то я не могу это понять. Если бы вы поставили SET XACT ABORT ON, то вы бы получили именно в Вашем примере ошибку 8134, но в BOL про такое свойство SET XACT ABORT ON нигде ничего не написано. И в какой-то мере это недокументированное поведение.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837675
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такое ощущение, что сегодня пятница.
Но календарь не врет - вторник, епрст... Хотя на улицу посмотришь, в монитор посмотришь - пятница блин, ну пятница......

А зря.....
А завтра вот у нас корпоративное празднование НГ. Правда я не иду - не люблю я этого :) И в следующую среду улечу к себе домой на НГ аж до 10 числа. Эээхххххххххххххх


-- Tygra's --
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837711
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман ДынникИ что тут мало осмысленного?
Я бы спросил - что там осмысленного.

Малоосмысленного - то, что если Вам верно подсказывают насчет недостатков этого кода (я не знаю T-SQL и ничего не скажу по этому поводу), то Вам придется устроить массовую перегенерацию/redeploy половины Вашей базы.
В то время как достаточно было бы поменять пару строк в объекте типа "table inserter" (это, кстати, к объектному подходу). Если Ваша база уже стоит у клиента - Вам придется слать ему "патч" на десятки тысяч строк, в то время как достаточно бы было прислать одну dll-ку/class-файл.

Я в общем почти уверен, что Вы ответите. И почти уверен, что в дискуссии с Вами сумею защитить даже позицию "джависта-все-на-аппсерверщика", которую считаю в корне неверной.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837720
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
www.fun4me.narod.ru
я извиняюсь, правильнее будет возвращать ошибку через return.
пример некорректный был в плане управления транзакциями в #bad_generated_code1 и #bad_generated_code2.

придется подпатчить немного генератор и перегенерить десяток хп. Фу... а ведь иначе бы пришлось руками всё править...
SET XACT ABORT ON иногда много проблем решает.
==
оффтоп.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837724
AAron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2nkulikov
а более точно можно? :)
в частности, причем тут "все хорошо в меру"?

PS. И потом, я привел всего лишь пример. В настоящий момент никакого отношения к Юкону беседа не имеет.
PPS. Для любителей ООП - в Юконе можно и объекты (UDT) сохранять. Вы бы поисследовали эту тему.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837737
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AAronИнтересно например сравнить с аналогичными функциями в Оракле, сравнить насколько удачно или неудачно они реализованы.
Хм. А как Вы представляете себе сравнение того, что реализовано в Оракле, с тем, что будет реализовано в (непонятно когда) выходящем Yukon. Или я отстал от жизни и он уже вышел?
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837747
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerИли я отстал от жизни и он уже вышел?Yukon AKA MS SQL 2005... По календарю 2004 :)

P.S. Вторую бету мучают.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837795
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман Дынник
Судя по Вашим высказываниям я вывел для себя примерно такую мысль "Мне с Тигрой давно пора бросать проектировать таблички и ХП, и переходить на ООП, потому что Вам так удобнее". Не обижайтесь, но смысл полностью таков.

Далее еще раз не обижайтесь, но лично я вижу, что опыта проектирования БД и написания бизнес-логики на хранимых и триггерах у Вас маловато будет. Это не смертельно, но это не повод лично Вам выступать как просветителем "мрачных и морально устаревших" архитекторов БД.

Далее могу сказать, что у меня на WatcomSQL (диалект ХП для ASA) написан движок, который по макетам может генерить ХП с параметрами, при запуске которых они создают в БД ХП, генерящие нужные действия. Это используется для генерации в моих личных целях HTTP-контентов и организации интранет-сайтов на базе ASA. Это же используется для генерации по макетам хранимых процедур и триггеров. Движок этот занимает ровно 12 небольших по обьему хранимых процедурок, которые расковыривают макет, выщемляют с него тело, определяют секции и параметры, описанные на XML, преобразуют ключевые слова в действия и генерят все в виде WatcomSQL скриптов. В итоге в моих БД 80% ХП тоже генериться автоматически. Я мог написать такой движок на ООП, но уверяю, меньше бы по размеру и трудоемкости написания он не стал, просто бы пришлось использовать при написании другие парадигмы.

Далее мои и Ваши 80% автоматически сгенерированных процедур в БД не говорят о том, что мы с Вами круты, а вот Тигра нет. Это говорит только о том, что мы с Вами предпочитаем уводить DML операторы на уровень хранимых процедур и они вполне однотипны согласно определенным макетам. У меня во всяком случае в зависимости от типа сущности, который может обьединять в себя множество связанных таблиц и определенные аттрибуты могут автоматически генерится множество процедур по 7 различным макетам, все назначение которых - свести работу клиентского приложения с базой данных до примитивного уровня - получил в простом виде, изменил и вызвав ХП зафиксировал изменения в простом виде. Я уже молчу про множество автоматом генерящихся триггеров, которые в зависимости от определенной модели поведения занимаются различными проверками, вычислениями и другой полезной, но в принципе рутинной работой.

Что имеем в заключение ? Имеем, что не средство определяет специалиста, а специалист определяет средство. Так же имеем, что чем шире у специалиста кругозор, тем больше решений в различных измерениях он может осознать и применить. Не надо думать, что Тигра или я в жизни не занимались ООП. Лично я потратил на это 7 лет своей жизни, написал добрую сотню визуальных/невизуальных компонент, несчетное кол-во классов, с десяток интрепретаторов и различных парсеров. Поэтому не надо лично мне заявлять, что мне пора отвыкать от таблиц и полей - это на самом деле не серьезно. Я знаю что такое ООП и успешно использую его по назначению каждый божий день :)
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32837800
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гы - не удержусь - в конце концов с ООП я знаком с 1990 года, когда мне в руки попал славный добрый Turbo Pascal 5.5 и первое что я на нем сделал в качестве осмысливания ООП - это собственную навигационную базу данных :) Странно, что я с тех пор переменил свое мировозрение, не правда ли ? :)
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32838013
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Роман Дынник

>Не используют потому что не привыкли, потому что мыслят таблицами и записями, потому что надо время на изучение а его нет, потому что не везде целесообразно применять java-процедуры.

Времени на изучение было больше 10 лет, это не объяснение. Когда в сайбейзе вводили поддержку джавы, очень многие сторонники ООП-а радостно потирали руки. Их-то учить не нужно. Но получился пшик, джава не прижилась, все продолжают использовать WatcomSQL. Думаю с другими SQL серверами та же ситуация.

Есть более простое и правдоподобное объяснение: джаву в SQL серверах не используют потому что не удобно. Записи, поля, отношения гораздо удобнее объектов. ИМХО. По крайней мере для меня это так, теперь подтверждают и другие тоже.

Я сам использую ООП иногда, в тех случаях, когда он что-то экономит, но экономит он далеко не всегда.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32838954
AAron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2softwarer
Вообще, есть бетты, есть Express2005. Постоянно проводятся разные семинары.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32839505
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
учитывая мой жестко критикуемый опыт в написании серверной логики, прошу
здесь обсудить шаблон для вложенных хп.
...
Рейтинг: 0 / 0
Весомый плюс Юкон над ORACLE
    #32839828
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AAron2softwarer
Вообще, есть бетты, есть Express2005. Постоянно проводятся разные семинары.
Хм. Боюсь, я не представляю, как в таких условиях сравнивать реализацию. Насколько я понимаю, можно заявить, что "видимо, такие функции будут"; можно сказать, что "видимо, позволят меньше" либо "похоже, могут позволить и больше". Но собственно ключевые параметры работы - скорость и потребные ресурсы - сравнивать можно только у релизов.
...
Рейтинг: 0 / 0
25 сообщений из 200, страница 8 из 8
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Весомый плюс Юкон над ORACLE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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