Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 15 16 17 18 19 20 21 [22] 23 24   вперед  Ctrl
 Re: Покритикуйте Оракл 10г  [new]
Yo.!
Guest
2drev

лапоть - про пакеты слышал ? кто тебе позолит фигарить код вне пакетов ?
27 июл 07, 12:57    [4445191]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
locky
Member

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

dmidek wrote:
> В Ваших устах слова "ораклисты" звучит как ругательство.
> От человека, который "с Эллисоном на дружеской ноге" (C) :-)
> я ожидал бОльшей лояльности.
Хоть он мне друг - но истина дороже.

Posted via ActualForum NNTP Server 1.4

27 июл 07, 13:02    [4445237]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
locky
Member

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

Yo.! wrote:
> 2drev
> лапоть - про пакеты слышал ? кто тебе позолит фигарить код вне пакетов ?
Я так подозреваю - Игорь слышал про пакеты :)
А что, если я в пакете сделаю финт ушами с колонкой/переменной/таблицей
- у меня ничего не выйдет?
Разве что добавится трабла с пакетными перменнными/функциями.

Posted via ActualForum NNTP Server 1.4

27 июл 07, 13:03    [4445254]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Yo.!
2drev

лапоть - про пакеты слышал ? кто тебе позолит фигарить код вне пакетов ?


Т.е. Если код - более чем одна инструкция, то он обязательно должен быть в пакете?
27 июл 07, 13:11    [4445324]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
Yo.!
Guest
locky

Я так подозреваю - Игорь слышал про пакеты :)
А что, если я в пакете сделаю финт ушами с колонкой/переменной/таблицей
- у меня ничего не выйдет?
Разве что добавится трабла с пакетными перменнными/функциями.

научите финтить с колонкой/переменной/таблицей в пакете ... я то необучен :)
чтоб нарватся на такое вам бы пришлось обозвать пакет также как табличку, а колонку также как функцию, но оракл не даст вам обозвать пакет тем же именем, что и табличка ....
27 июл 07, 13:12    [4445343]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
MElin
Member

Откуда: Йо-бург
Сообщений: 84
drev

Откроет он декларацию таблицы. Нет колонки а? Великолепно!
Начнёт он искать декларацию переменной или параметра.
Предположим, IDE ему поможет (нормальные IDE появились не так давно, ну ладно).
Нашёл! Параметр! Великолепно! Не придётся искать функцию с именем а.

Понял человек код. Написал комментарий. "Эта процедура удаляет записи из таблицы b с id равным параметру а".
И уволился.
А через полгода другой человек решил добавить в табличку b колонку с именем а.
И добавил.
И не было громов и молний.. и ошибок и предупреждений тоже не было.
После чего третий человек запустил процедуру Х с значением параметра а равным двум.
И не было громов и молний.. и ошибок и предупреждений тоже не было.
И вместо одной строчки из таблицы b удалились все строчки , у которых значение колонки id совпало со значением колонки а.
Вот такая страшная сказка.
И всего этого не было бы, если бы Оракл поддерживал целостность бизнес-логики, а не разрешал конфликты имён динамически.
Теперь, господа ораклисты, проблема понятна?
А Вы говорите "павлины".. то бишь - "кракозябры".


Если у Вас есть желание прикрывать "странности" лексического анализатора такими вот сказками - никто не мешает Вам на фирме завести ВНУТРЕННИЙ стандарт именования переменных.

Используя же НЕКОТОРЫЕ ДРУГИЕ продукты меня ОБЯЗЫВАЮТ использовать кем то ЗАРАНЕЕ ПРИДУМАННЫЕ стандарты именования переменных.

Есть некоторая разница?
27 июл 07, 13:14    [4445357]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
pkarklin
Member

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

Используя же НЕКОТОРЫЕ ДРУГИЕ продукты меня ОБЯЗЫВАЮТ использовать кем то ЗАРАНЕЕ ПРИДУМАННЫЕ стандарты именования переменных.


Дело не в обязательности использования стандартов, а в самом факте существования такой "возможности".
27 июл 07, 13:17    [4445376]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
drev
Member

Откуда: Одесса - Берег Красного Дерева - Красный мир
Сообщений: 564
Yo.!
locky

Я так подозреваю - Игорь слышал про пакеты :)
А что, если я в пакете сделаю финт ушами с колонкой/переменной/таблицей
- у меня ничего не выйдет?
Разве что добавится трабла с пакетными перменнными/функциями.

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



Причём здесь пакеты?

В примере речь идёт об имени параметра и колонки таблицы.

Вы хоть читать умеете?

Прежде, чем .. я не хочу давать определения тому, что Вы делаете..
27 июл 07, 13:20    [4445400]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
Yo.!
Guest
pkarklin

Дело не в обязательности использования стандартов, а в самом факте существования такой "возможности".

в mssql есть возможность хранить обсалютно все данные в одной большой таблице ...
27 июл 07, 13:21    [4445415]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 122115
Yo.!
locky

Я так подозреваю - Игорь слышал про пакеты :)
А что, если я в пакете сделаю финт ушами с колонкой/переменной/таблицей
- у меня ничего не выйдет?
Разве что добавится трабла с пакетными перменнными/функциями.

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


ИМХО мы не должны скрывать правду - нам нечего стыдиться :-)

SQL> 
SQL> create table tab (a number)
  2  /
 
Table created
SQL> insert into scott.tab
  2  values (2)
  3  /
 
1 row inserted
SQL> insert into scott.tab
  2  values (3)
  3  /
 
1 row inserted
 
SQL> 
SQL> create or replace package pkg_test
  2  is
  3  procedure prc_test;
  4  end;
  5  /
 
Package created
SQL> create or replace package body pkg_test
  2  is
  3  procedure prc_test is
  4  a number := 100;
  5  v_great_problem NUMBER;
  6  BEGIN
  7  SELECT count(*) into v_great_problem
  8  from scott.tab where a = a;
  9  dbms_output.put_line(v_great_problem);
 10  END;
 11  END;
 12  /
 
Package body created
 
SQL> set serveroutput on
SQL> 
SQL> begin
  2  pkg_test.prc_test;
  3  end;
  4  /
 
2
 
PL/SQL procedure successfully completed
 
SQL> 
27 июл 07, 13:24    [4445442]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
pkarklin
Member

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

Дело не в обязательности использования стандартов, а в самом факте существования такой "возможности".

в mssql есть возможность хранить обсалютно все данные в одной большой таблице ...


Эээ... Простите... Но я не совсем понял, что Вы хотите этим сказать. Можно для простых смертных разжевать?
27 июл 07, 13:33    [4445514]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
drev
Member

Откуда: Одесса - Берег Красного Дерева - Красный мир
Сообщений: 564
dmidek
Yo.!
locky

Я так подозреваю - Игорь слышал про пакеты :)
А что, если я в пакете сделаю финт ушами с колонкой/переменной/таблицей
- у меня ничего не выйдет?
Разве что добавится трабла с пакетными перменнными/функциями.

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


ИМХО мы не должны скрывать правду - нам нечего стыдиться :-)

SQL> 
SQL> create table tab (a number)
  2  /
 
Table created
SQL> insert into scott.tab
  2  values (2)
  3  /
 
1 row inserted
SQL> insert into scott.tab
  2  values (3)
  3  /
 
1 row inserted
 
SQL> 
SQL> create or replace package pkg_test
  2  is
  3  procedure prc_test;
  4  end;
  5  /
 
Package created
SQL> create or replace package body pkg_test
  2  is
  3  procedure prc_test is
  4  a number := 100;
  5  v_great_problem NUMBER;
  6  BEGIN
  7  SELECT count(*) into v_great_problem
  8  from scott.tab where a = a;
  9  dbms_output.put_line(v_great_problem);
 10  END;
 11  END;
 12  /
 
Package body created
 
SQL> set serveroutput on
SQL> 
SQL> begin
  2  pkg_test.prc_test;
  3  end;
  4  /
 
2
 
PL/SQL procedure successfully completed
 
SQL> 



Ну вот:)

Честный человек нашёлся. Не выкручивается.

Правда, немного более показательным был бы мой исходный пример с id = a, a не а = а, не так ли?

Кстати, я нигде не утверхдал, что с "с Эллисоном на дружеской ноге" (C) :)

По поводу Оракл и ораклистов.

ИМХО:

1. Оракл - хорошая СУБД, которой как и всем присущи недостатки
2. Сам работал на оракле, и куча друзей на нём работают.
3. Ораклисты - в моём понимании - бездумные фанаты Оракл, типа фанатов "Спартака". К ним у меня отношение негативное.
27 июл 07, 13:35    [4445535]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 122115
drev


Ну вот:)

Честный человек нашёлся.


Спасибо. Правда, несколько омрачено дальнейшим ...

drev

Правда, немного более показательным был бы мой исходный пример с id = a, a не а = а, не так ли?


Может быть, но все ведь ясно и так ...

drev

3. Ораклисты - в моём понимании - бездумные фанаты Оракл, типа фанатов "Спартака". К ним у меня отношение негативное.


То есть Вы называете меня бездумным фанатом Оракл, типа фанатов "Спартака"
и ко мне у Вас отношение негативное ? Странный поворот дискуссии.
Критикуйте Oracle в меру своей компетенции, с какой стати Вы начали критиковать
меня ? Прошу разъяснений .
27 июл 07, 13:41    [4445571]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
MElin
Member

Откуда: Йо-бург
Сообщений: 84
pkarklin
MElin

Используя же НЕКОТОРЫЕ ДРУГИЕ продукты меня ОБЯЗЫВАЮТ использовать кем то ЗАРАНЕЕ ПРИДУМАННЫЕ стандарты именования переменных.

Дело не в обязательности использования стандартов, а в самом факте существования такой "возможности".

Дело в том, что отсутствие такой очень полезной "возможности" есть скудность компилятора.
27 июл 07, 13:42    [4445582]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
MElin
Member

Откуда: Йо-бург
Сообщений: 84
drev

1. Оракл - хорошая СУБД, которой как и всем присущи недостатки
2. Сам работал на оракле, и куча друзей на нём работают.
3. Ораклисты - в моём понимании - бездумные фанаты Оракл, типа фанатов "Спартака". К ним у меня отношение негативное.

Ну вот. Аргументы закончились, самое время переходить на личности. Очень хороший прием демагогов.
27 июл 07, 13:46    [4445605]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
locky
Member

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

MElin wrote:
> Ну вот. Аргументы закончились, самое время переходить на личности. Очень
> хороший прием демагогов.
ну... Есть Oracle DBA/Oracle developer, а есть - Ораклисты :)
Первые - обычные нормальные люди, вторые - "необычные" и - далее по
тексту :).

Posted via ActualForum NNTP Server 1.4

27 июл 07, 13:48    [4445623]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
drev
Member

Откуда: Одесса - Берег Красного Дерева - Красный мир
Сообщений: 564
dmidek
drev


Ну вот:)

Честный человек нашёлся.


Спасибо. Правда, несколько омрачено дальнейшим ...

drev

Правда, немного более показательным был бы мой исходный пример с id = a, a не а = а, не так ли?


Может быть, но все ведь ясно и так ...

drev

3. Ораклисты - в моём понимании - бездумные фанаты Оракл, типа фанатов "Спартака". К ним у меня отношение негативное.


То есть Вы называете меня бездумным фанатом Оракл, типа фанатов "Спартака"
и ко мне у Вас отношение негативное ? Странный поворот дискуссии.
Критикуйте Oracle в меру своей компетенции, с какой стати Вы начали критиковать
меня ? Прошу разъяснений .



Я ошибся. Приношу извинения. Я описал моё понимание этого слова. Судя по дискуссии, Вы к ним не относитесь.
27 июл 07, 13:50    [4445635]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
Yo.!
Guest
pkarklin

Эээ... Простите... Но я не совсем понял, что Вы хотите этим сказать. Можно для простых смертных разжевать?

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

2dmidek
ну спасибо, с кодом кажется дошло о чем речь :)

2drev
а в парадигме ООП вас ничего не смущает ? а перегрузка операторов, нет ?
27 июл 07, 13:50    [4445639]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
pkarklin
Member

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


Позволю себе процитировть:

Закон Мерфи:

Если какая-нибудь неприятность может произойти, она случается.

Следствие (одно из нескольких):
...
Из всех неприятностей произойдет именно та, ущерб от которой больше.
27 июл 07, 13:54    [4445662]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
drev
Member

Откуда: Одесса - Берег Красного Дерева - Красный мир
Сообщений: 564
locky

MElin wrote:
> Ну вот. Аргументы закончились, самое время переходить на личности. Очень
> хороший прием демагогов.
ну... Есть Oracle DBA/Oracle developer, а есть - Ораклисты :)
Первые - обычные нормальные люди, вторые - "необычные" и - далее по
тексту :).
Posted via ActualForum NNTP Server 1.4


Спасибо:) Именно это я и имел ввиду. Если у кого-нибудь сложилось впечатление, что это относилось ко ВСЕМ людям, которые работают на Оракле, ещё раз приношу извинение за неясность.
27 июл 07, 13:55    [4445670]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 122115
drev
Приношу извинения.


Принято, все в порядке.

По сути Вашего замечания о неоднозначности именования я ответил раньше...

Это помимо всего прочего еще и философская дискуссия о том,
что лучше: свобода или несвобода :-) Многие люди неготовы к свободе,
(C) "мне вчера дали свободу, что я с ней делать буду" :-)
Они с благодарностью принимают запреты и ограничения - им так легче жить ,
меньше ответственность ...

На всякий случай уточню, что говорю в общем...

P.S. Это не демагогия, просто размышления :-)
27 июл 07, 14:00    [4445707]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
drev
Member

Откуда: Одесса - Берег Красного Дерева - Красный мир
Сообщений: 564
Yo.!
pkarklin

Эээ... Простите... Но я не совсем понял, что Вы хотите этим сказать. Можно для простых смертных разжевать?

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

2dmidek
ну спасибо, с кодом кажется дошло о чем речь :)

2drev
а в парадигме ООП вас ничего не смущает ? а перегрузка операторов, нет ?



Знаете, многое смущает:) и не только меня:)

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

В любом нормальном ОО языке такой ситуации возникнуть бы не могло. Разработчик имеет права полагаться только на контракт метода.

В подобной ситуации мы получили бы ошибку с сообщением о конфликте. У параметра и колонки таблицы контракт РАЗНЫЙ. А у перегруженных методов - одинаковый.

Разница ясна?
27 июл 07, 14:11    [4445786]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 122115
drev

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


Если я создам триггер на таблицу, он тоже вполне может изменить смысл оператора.
Я добавляю в поле двойку, а оно в триггере тройкой затирается ... :-)

Опять выскажу свое мнение - да, скрывать нечего, ситуации , подобно описанной Вами,
существуют. На форум Oracle сравнительно часто приходят с подобными ошибками.
Как с этим бороться ? Опять же выскажу свое мнение - организационными мероприятиями,
корпоративным стандартом. Варианты : именовать переменные с префиксом var_, v_ и т.п.
Другой возможностью является полная квалификация имен переменных с указанием имени
процедуры (prc_test.a в моем примере ) - на мой взгляд более громоздкий вариант.

Но запреты на мой взгляд не приведут к улучшению программного кода. Дело здесь в
несовершенстве Oracle, а в несовершенстве программистов , в несовершенстве орг.
процесса в организации, когда отсутствует преемственность в ведении кода, когда
один человек добавляет колонку, а другой - процедуру :-) Этот хаос все равно где- то
взорвется, и синтаксические запреты как мне кажется здесь не помогут ...
27 июл 07, 14:31    [4445923]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
drev
Member

Откуда: Одесса - Берег Красного Дерева - Красный мир
Сообщений: 564
dmidek
drev

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


Если я создам триггер на таблицу, он тоже вполне может изменить смысл оператора.
Я добавляю в поле двойку, а оно в триггере тройкой затирается ... :-)

Опять выскажу свое мнение - да, скрывать нечего, ситуации , подобно описанной Вами,
существуют. На форум Oracle сравнительно часто приходят с подобными ошибками.
Как с этим бороться ? Опять же выскажу свое мнение - организационными мероприятиями,
корпоративным стандартом. Варианты : именовать переменные с префиксом var_, v_ и т.п.
Другой возможностью является полная квалификация имен переменных с указанием имени
процедуры (prc_test.a в моем примере ) - на мой взгляд более громоздкий вариант.

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



Может быть предупреждение "изменился смысл идентификатора" помогло бы?
27 июл 07, 14:39    [4445990]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте Оракл 10г  [new]
ЛП
Guest
Бред какой-то
Есть явная кривость - а фанаты оракла пытаются доказать, что это хорошо и правильно :)

Все равно что в ответ на слова "слабая типизация - плохо и багоопасно" какие-нибудь фанаты Perl начали бы утверждать, что дескать "а вы переменные именуйте с префиксами, с багами надо бороться корпоративными стандартами и организационными мероприятиями, отсутствие такой возможности есть скудость компилятора, и вообще многие люди не готовы к свободе"
27 июл 07, 14:45    [4446042]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 15 16 17 18 19 20 21 [22] 23 24   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить