Re[5]: Среда разработки
От: TMU_1  
Дата: 03.12.18 18:18
Оценка:
TMU>>Ахаха. Неплохой заход, почему-то никто не реагирует.
A>Здесь же в основном разработчики на более вменяемых языках чем pl/sql и t-sql, поэтому про мощность никто не понял.



Все на JS пишут )?
Re[4]: Среда разработки
От: Kaifa Россия  
Дата: 03.12.18 18:49
Оценка:
TMU>Ахаха. Неплохой заход, почему-то никто не реагирует.

ви есть что-то возразить?
лично мне, когда с mssql перешел на оракле (надеюсь временно) чувствовал, что мне просто перекрыли кислород.

кстати явы после шарпа это тоже касается.
Re[6]: Среда разработки
От: amironov79  
Дата: 04.12.18 09:30
Оценка:
Здравствуйте, TMU_1, Вы писали:

TMU>>>Ахаха. Неплохой заход, почему-то никто не реагирует.

A>>Здесь же в основном разработчики на более вменяемых языках чем pl/sql и t-sql, поэтому про мощность никто не понял.

TMU>Все на JS пишут )?


Ну js это другая крайность. Слишком мощный.
Re[5]: Среда разработки
От: amironov79  
Дата: 04.12.18 09:35
Оценка:
Здравствуйте, Kaifa, Вы писали:


TMU>>Ахаха. Неплохой заход, почему-то никто не реагирует.


K>ви есть что-то возразить?


Статическую компиляцию туда уже завезли?
Re[5]: Среда разработки
От: TMU_1  
Дата: 04.12.18 10:58
Оценка:
TMU>>Ахаха. Неплохой заход, почему-то никто не реагирует.
K>ви есть что-то возразить?
K>лично мне, когда с mssql перешел на оракле (надеюсь временно) чувствовал, что мне просто перекрыли кислород.



То есть какие-то вещи делаются не так, как ты привык?
Re[6]: Среда разработки
От: aios  
Дата: 04.12.18 12:24
Оценка:
TMU>То есть какие-то вещи делаются не так, как ты привык?

я привел простой пример с процедурой, которая возвращает датасет. когда узнал через какую жопу и с каким количеством лишнего текста делается на оракле, сказать что я офигел — это промолчать.
и из-за этой перегруженности код у процедур, которые приходится поддерживать очень плохо читается.
еще бесит отсутствие временных таблиц в том понимании, как они используются в mssql. приходится писать хитровыкрученные запросы, опять же совершенно нечитабельные....
Re[6]: Среда разработки
От: · Великобритания  
Дата: 04.12.18 20:46
Оценка:
Здравствуйте, amironov79, Вы писали:

a> TMU>>Ахаха. Неплохой заход, почему-то никто не реагирует.

a> K>ви есть что-то возразить?
a> Статическую компиляцию туда уже завезли?
Прошу прощения, не копенгаген, но любопытно... это что?
avalon/2.0.6
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[7]: Среда разработки
От: amironov79  
Дата: 05.12.18 04:17
Оценка:
Здравствуйте, ·, Вы писали:

·>Прошу прощения, не копенгаген, но любопытно... это что?


Проверка корректности использования объектов базы при создании процедур.
Re[7]: Среда разработки
От: amironov79  
Дата: 05.12.18 04:53
Оценка: +2
Здравствуйте, aios, Вы писали:

A>я привел простой пример с процедурой, которая возвращает датасет. когда узнал через какую жопу и с каким количеством лишнего текста делается на оракле, сказать что я офигел — это промолчать.

A>и из-за этой перегруженности код у процедур, которые приходится поддерживать очень плохо читается.
A>еще бесит отсутствие временных таблиц в том понимании, как они используются в mssql. приходится писать хитровыкрученные запросы, опять же совершенно нечитабельные....

Да, многословность -- большой минус pl/sql. Я тоже от него не в восторге, но при всех неудобствах он обеспечивает надежность кода. От t-sql же веет некой скриптовостью и игрушечностью, работа с ним напоминает написание shell-скриптов, вроде и коротко, и удобно, но не покидает чувство, что может в любой момент сломаться.
Re[5]: Среда разработки
От: Somescout  
Дата: 06.12.18 13:47
Оценка:
Здравствуйте, aios, Вы писали:

A>забавно.

A>mssql:
A>
A>create procedure p as select t.id, t.name from t
A>


A>одна строчка. на оракле придется городить pipeline функцию, определять package, тип, заголовок, тело, в теле курсор, короче скрипт раздуется на минимум страницу кода.


А можете показать (хотя бы приблизительно) как это выглядит на оракле? А то я в сторону T-SQL ругался, а есть оказывается ещё более страшные диалекты?
ARI ARI ARI... Arrivederci!
Re[6]: Среда разработки
От: amironov79  
Дата: 07.12.18 06:03
Оценка:
Здравствуйте, Somescout, Вы писали:

S>А можете показать (хотя бы приблизительно) как это выглядит на оракле? А то я в сторону T-SQL ругался, а есть оказывается ещё более страшные диалекты?


Не все так страшно, просто многословный паскалеобразный язык без сахара:

CREATE OR REPLACE PACKAGE test_ed_pkg IS
    TYPE ed_rec_t IS RECORD(
        num INT,
        str VARCHAR2(2000));
        
    TYPE ed_tab_t IS TABLE OF ed_rec_t;

    FUNCTION get_pipe RETURN ed_tab_t
        PIPELINED;
END;
/

CREATE OR REPLACE PACKAGE BODY test_ed_pkg IS
    FUNCTION get_pipe RETURN ed_tab_t
        PIPELINED IS
        rec ed_rec_t;
    BEGIN
        FOR rec IN (SELECT 1 num, 'one' str FROM dual) LOOP
            PIPE ROW(rec);
        END LOOP;
    
        RETURN;
    END;
END;
/

SELECT * FROM TABLE(test_ed_pkg.get_pipe);


Кстати, если в t-sql надо дополнительно обработать результат процедуры, то коротко тоже не получится.
Re[5]: Среда разработки
От: Gt_  
Дата: 02.01.19 18:20
Оценка:
A>забавно.
A>mssql:
A>
A>create procedure p as select t.id, t.name from t
A>


A>одна строчка. на оракле придется городить pipeline функцию, определять package, тип, заголовок, тело, в теле курсор, короче скрипт раздуется на минимум страницу кода.

A>ну и кому бы решить проблему нормальной среды разработки было бы казалось актуальнее?

ну в пхп тоже на первый взгляд студента синтаксис лучше, но на таком обрубке, без строгой типизации, не реально серьезную бизнес логику написать. кастрат t-sql в мире субд это пых-пых. в оракле четко требуется определить входящие-выходящие типы, реализовано отслеживание зависимостей. т.е. если ты удалил таблицу t весь зависимой от таблицы код пометится invalid. а у мсскл же скриптовая дребень, которая сегодня одну структуру возвращает, завтра другую. такому конечно синтаксис много проще можно делать, серьезную логику то на t-sql делать не будут. потому весь фин сектор с суровой бизнес логикой сидит исключительно на оракле.

Gt_
Отредактировано 02.01.2019 18:49 Gt_ . Предыдущая версия .
Re[4]: Среда разработки
От: Gt_  
Дата: 02.01.19 18:33
Оценка:
A>>вот не понимаю. оракл вроде не бедная совсем контора. чего не сделать нормальный инструмент? почему майкрософту не западло это было сделать?
DO>Причем тут бедная или не бедная? Майкософт делал ставку на разработчиков (Developers! Developers! Developers! Developers!), а Oracle на пользователей (включая админов).

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

Gt_
Re[6]: Среда разработки
От: · Великобритания  
Дата: 02.01.19 19:46
Оценка:
Здравствуйте, Gt_, Вы писали:

Gt_> A>одна строчка. на оракле придется городить pipeline функцию, определять package, тип, заголовок, тело, в теле курсор, короче скрипт раздуется на минимум страницу кода.

Gt_> A>ну и кому бы решить проблему нормальной среды разработки было бы казалось актуальнее?
Gt_> ну в пхп тоже на первый взгляд студента синтаксис лучше, но на таком обрубке, без строгой типизации, не реально серьезную бизнес логику написать. кастрат t-sql в мире субд это пых-пых. в оракле четко требуется определить входящие-выходящие типы, реализовано отслеживание зависимостей.
dm_sql_referencing_entities и т.п.

Gt_>т.е. если ты удалил таблицу t весь зависимой от таблицы код пометится invalid.

А что это даёт? Вместо конкретной ошибки "table 't' not found" будет невнятное "procedure invalid"?
avalon/2.0.6
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[7]: Среда разработки
От: Gt_  
Дата: 02.01.19 20:26
Оценка:
Gt_>>т.е. если ты удалил таблицу t весь зависимой от таблицы код пометится invalid.
·>А что это даёт? Вместо конкретной ошибки "table 't' not found" будет невнятное "procedure invalid"?

накатив sql скрипты, меняющие структуры таблиц ораклойд сразу видит, где какой код развалился. в мсскл же "table 't' not found" выползает лишь в рантайме. и это пол беды. упрощенный синтаксис мсскл вот к такой хрени сплошь и рядом приводит. майкрософт явно люто ненавидит именно разработчиков, раз такое предлагает юзать.

Gt_
Re[8]: Среда разработки
От: · Великобритания  
Дата: 02.01.19 21:09
Оценка:
Здравствуйте, Gt_, Вы писали:

Gt_>·>А что это даёт? Вместо конкретной ошибки "table 't' not found" будет невнятное "procedure invalid"?

Gt_>накатив sql скрипты, меняющие структуры таблиц ораклойд сразу видит, где какой код развалился.
А как это выглядит? Ну выполняю я "drop table t" — как я узнаю поломались ли хранимки и какие?

Gt_>в мсскл же "table 't' not found" выползает лишь в рантайме. и это пол беды. упрощенный синтаксис мсскл вот к такой хрени сплошь и рядом приводит. майкрософт явно люто ненавидит именно разработчиков, раз такое предлагает юзать.

В данном случае по моему это не проблема синтаксиса, а непонятки со скопом временных таблиц...
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[9]: Среда разработки
От: Gt_  
Дата: 02.01.19 21:25
Оценка: 4 (1)
Gt_>>·>А что это даёт? Вместо конкретной ошибки "table 't' not found" будет невнятное "procedure invalid"?
Gt_>>накатив sql скрипты, меняющие структуры таблиц ораклойд сразу видит, где какой код развалился.
·>А как это выглядит? Ну выполняю я "drop table t" — как я узнаю поломались ли хранимки и какие?

разработчику гуи подсветит инвалидные оъекты, метаданные данные всем доступны
SQL> select object_type,count(*) from user_objects where status = 'INVALID' 
  2  group by object_type;
OBJECT_TYPE          COUNT(*)
------------------ ----------
PACKAGE BODY                4
PROCEDURE                  61
VIEW                        3


Gt_>>в мсскл же "table 't' not found" выползает лишь в рантайме. и это пол беды. упрощенный синтаксис мсскл вот к такой хрени сплошь и рядом приводит. майкрософт явно люто ненавидит именно разработчиков, раз такое предлагает юзать.

·>В данном случае по моему это не проблема синтаксиса, а непонятки со скопом временных таблиц...

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

Gt_
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.