Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
alexey_tmА все просто, чтобы именовать таблицу и /или колонку "русским именем" её нужно заключить в '', чтобы обратиться к ней, надо проделать тоже самое... Не нужно ее заключать в кавычки. Это добавит к глюкам русских букв еще и глюки неправильного регистра символов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 15:59 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
alexey_tmВообще-то для того, чтобы определить кто куда ссылается, существует словать данных... То есть Вы предпочитаете получить исключение вида "constraint SYS_012345 violated" и отправиться в словарь данных смотреть, что это за constraint? Нет, спасибо. Лично мне "constraint FK_TABLE1_TABLE2" куда как удобнее. Время, знаете ли, стоит денег. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:02 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
2 Apex Я за такое вот кастрировал бы, чтоб дебилов меньше рождалось. А я бы например кастрировал тех дибилов, которые английский ниасилили, но и по русски писать им религия не позволяет. В итоге пишут транслитом, да еще и с использованием абревиатур :). Получается скотоложество типа ScrPrDrID. Куй его знает что это такое, зато раскладку переключать не надо, и все типа крутые :). Вы когда-нибудь видели базы данных, в которых ВСЕ названия объектов написаны по русски и практически без сокращений??? Вы, судя по всему, даже не представляете, как в таком случае упрощается разработка и сопровождение системы... Соболезную Не видел и видеть не хочу. Давайте обсуждать вкус устриц с теми, кто их ел. Сопровождение облегчает грамотная декомпозиция системы, четкая модульная реализация, грамотно написаный код. А не название объектов в кириллической кодировке. Одно другому не мешает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:03 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
softwarer SourceSafe я выкинул очень давно. ErWin-ом пришлось пользоваться подольше, и поэтому наблюдал его кривую работу с русскими буквами, причем вообще без всякой БД - только внутри себя, на уровне записал модель в файл - прочитал модель из файла. Точную версию не помню; если не ошибаюсь, major version - 4, build 381. ты с кем разговариваешь думаешь лох лабающий на access разрабатывает модель бд в erwin или отслеживает код !? ЗЫ. я представляю что обо мне подумаеют если я в оракловый супорт зашлю типа http://www.sql.ru/forum/actualthread.aspx?tid=184634&hl=%ec%e0%f2%fc+%f1%e8%ed%f2%e0%ea%f1%e8%f1#1548494этого ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:05 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
LongsvanoАга. Классная перегрузка. Только такое перегрузить не может почемуто: Передергиваете. В приведенном Вами примере вообще нет перегрузки. Почему не видится верхняя функция? Видится. В своей области видимости. Хотя если не знать концепций... Попробуйте Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:05 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
2 alexey_tm Прескорбно то, что залетевший сюда случайно ПЛ теперь будет утверждать, что Oracle не умеет работать с русскими буквами. Так это ж не я утверждаю, это как раз таки ораклоиды глюки ловят с неанглийскими идентификаторами ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:07 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
softwarer wrote: > SourceSafe я выкинул очень давно. ErWin-ом пришлось пользоваться > подольше, и поэтому наблюдал его кривую работу с русскими буквами, > причем вообще без всякой БД - только внутри себя, на уровне записал > модель в файл - прочитал модель из файла. Точную версию не помню; если > не ошибаюсь, major version - 4, build 381. Версии 4.0 имхо глюкодром еще тот, даже без национальных символов:) Сейчас попробовал создать таблицу АБВГДЕЁЖЗИКЛМНО (АБВГДЕЁЖЗИКЛМНО varchar2(8)), втянуть ее в в ERwin 4.1.4 SP3 b4224 - проблем вроде нет. Удивляет выбор программ SourceSafe и ERwin как "небходимые професионалу для работы с субд". Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:08 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
LongsvanoЗапишем еще раз: перегрузка в PL/SQL - кастрированная. Запишем еще раз: некто Longsvano не знает, что есть перегрузка, однако употребляет это слово и строит на этой основе какие-то теории. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:09 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
Yo.!!ты с кем разговариваешь думаешь Я думаю, что в общем случае не тебе определять, с кем и о чем мне разговаривать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:12 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
softwarer Пьяный ЛохВпервые слышу о том, что ErWin, а уж тем более SourceSafe - не работают (криво работают) с юникодом вааще и русской кодировкой в частности. SourceSafe я выкинул очень давно. ErWin-ом пришлось пользоваться подольше, и поэтому наблюдал его кривую работу с русскими буквами, причем вообще без всякой БД - только внутри себя, на уровне записал модель в файл - прочитал модель из файла. Точную версию не помню; если не ошибаюсь, major version - 4, build 381. Я вот ErWin давно выкинул, по причине непроходимой его глючности. Но пока не выкинул - глюком именно с русскими буквачками не наблюдал. Что, разумеется, не значит, что их нет и быть не может (ну не видел я суслика...). SourceSafe тоже не лучший выбор (ну разве что для "профессианала" типа Йо), но и он на моей памяти не глючил с кодировками etc. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:13 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
авторВидится. В своей области видимости. Хотя если не знать концепций... Попробуйте Софтварер, читайте сообщения внимательнее. Я выше писал, что этот косяк правиться добавлением метки к анонимному блоку. Мне будет достаточно вашего определия перегрузки и ресурса, откуда вы его возьмете. А потом посмотрим подходит ли мой пример под перегрузку или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:16 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
Пьяный Лох2 Apex Я за такое вот кастрировал бы, чтоб дебилов меньше рождалось. А я бы например кастрировал тех дибилов, которые английский ниасилили, но и по русски писать им религия не позволяет. В итоге пишут транслитом, да еще и с использованием абревиатур :). Получается скотоложество типа ScrPrDrID. Куй его знает что это такое, зато раскладку переключать не надо, и все типа крутые :). Обеими руками за! Пьяный Лох Вы когда-нибудь видели базы данных, в которых ВСЕ названия объектов написаны по русски и практически без сокращений??? Вы, судя по всему, даже не представляете, как в таком случае упрощается разработка и сопровождение системы... Соболезную Не видел и видеть не хочу. Давайте обсуждать вкус устриц с теми, кто их ел. Спорьте, я лишь сказал, что и без них отлично себя чувствую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:32 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
авторПолучается скотоложество типа ScrPrDrID Такое скотоложество получается в том числе и потому, что база заставляет сокращать человеческие имена. Разработчик был бы рад записать нормальное имя, ан нет - НЭ ЛЭЗЭТ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:36 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
2 Apex Спорьте, я лишь сказал, что и без них отлично себя чувствую Зачем спорить? Вы ж их не ели :) Как человек, участвовавший и в проектах с криво-английским naming convention, и в проектах русско-несокращенными схемами именований, могу лишь подтвердить высказывание andy st об упрощении разработки и сопровождения. Если, разумеется, используемый инструментарий (в том числе и СУБД) не взглючит ненароком (косой взгляд в сторону неназываемых СУБД). А что до "и без них отлично себя чувствую"... хммм... я, быть может, и с однобуквенными названиями таблиц буду себя отлично чувствовать. Это никому ни о чем не говорит. 2 Longsvano Такое скотоложество получается в том числе и потому, что база заставляет сокращать человеческие имена. Разработчик был бы рад записать нормальное имя, ан нет - НЭ ЛЭЗЭТ! Такое скотоложество получается в первую очередь потому, что разруха - она не в сортирах :) Ну и ограничение в 30 символов, конечно... С одной стороны, 30 знаков - достаточно много... если не увлекаться префиксно-суффиксными схемами... Хотя и без них получалось вылазить за 30 символов, легко и ненапряжно... С другой стороны, 15 юникодовых букаф - эт писец. Эт несерьезно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:55 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
LongsvanoМне будет достаточно вашего определия перегрузки и ресурса, откуда вы его возьмете. А потом посмотрим подходит ли мой пример под перегрузку или нет. Боюсь, книги не очень подойдут как ресурс. Из того, что легко найти, в целом верное определение - http://www.cs.ucc.ie/~dgb/courses/swd/glossary.html#O В нем только нужно понять, что есть single scope (отождествление этого с "просто scope" будет неверным). Коротко: уже очень давно существует понятие области видимости идентификатора (display, scope). Сейчас в подавляющем большинстве случаев, область видимости идентификатора (и идентифицированного им объекта, соответственно) - часть блока, в котором объявлен этот идентификатор, после места объявления. Это и есть single scope из определения выше. Далее: в ЯП (впервые, по-моему, в Алголе, хотя могу ошибаться) потребовалась концепция взаимодействия display-ев, подключения одних в другие. То, что сейчас существует в виде вложенных блоков, использования внешних модулей и пакетов, наследования (видимость идентификаторов из предка), namespace-ов итп. Как только появилась эта потребность, появились и правила, определяющие приоритет видимости совпадающих идентификаторов из разных областей видимости. Во всех известных мне реализациях действует принцип - идентификатор, объявленный локально (в текущем блоке), скрывает идентификатор, подключаемый из внешнего блока. Наконец, что же есть перегрузка (overloading). Это фича объявления в одном display-е нескольких одноименных объектов, различимых по контексту использования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 16:58 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
Longsvano авторВидится. В своей области видимости. Хотя если не знать концепций... Попробуйте Софтварер, читайте сообщения внимательнее. Я выше писал, что этот косяк правиться добавлением метки к анонимному блоку. Мне будет достаточно вашего определия перегрузки и ресурса, откуда вы его возьмете. А потом посмотрим подходит ли мой пример под перегрузку или нет.Извините за вмешательство но вопрос не в перегрузке, а алгоритме разрешения имен. см. http://download-uk.oracle.com/docs/cd/B19306_01/appdev.102/b14261/subprograms.htm#sthref1744 Оракл не лезет в вышестоящий скоуп если нашел имя в текущем, причем перекрытие локальными именами глобальных идет без учета сигнатуры. Что означает группу перегрузки способны образовывть лишь функции одного скоупа. Противоречит ли это понятию перегрузки - думаю нет. Слегка убого - да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 17:06 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
ModelRОракл не лезет в вышестоящий скоуп если нашел имя в текущем, Причем это правильный (необходимый) подход. Иначе возможен следующий вариант: из-за изменения кода в одном месте стал иначе работать код в другом месте. Скажем: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 17:20 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
Apex wrote: > locky > > в моем случае нечто вроде exec doc0301_header_mod, exec doc0302_header_mod. > > Это вы че, на каждый документ по процедуре создаете? ну... вообще-то больше. плюс еще пачку генерит фреймвёрк. а у Вас получается обойтись одной процедурой обработки для разнотипных документов? -- ------------------------- There's no silver bullet! Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 17:29 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
авторПричем это правильный (необходимый) подход. Тут вам уже ответили. Вообще как это разрешение имен реализуется по-уму на низком уровне: Код: plaintext Вашей процедуре и ее набору аргументов присваивается некое хэш-имя, которое есть функция от типа(функ-я, процедура), имени, типов аргументов, их кол-ва и тд. Для машины procedure DoIt будет что-то типа того: PROC_FC086372CABC ну и тд. Для ваших DoIt этот хэш будет одинаковым (Здесь еще нужно как-то учесть DEFAULT параметры), так как varchar2 в number преобразуется автоматически - ваши два DoIt в представлении машины будут носить одинаковые имена. Но в моем примере эти хэши-названия функций должны быть разные, потому, что передается РАЗНОЕ кол-во аргументов. По-моему это недоработка или кривизна или косяк. О чем собственно я и говорил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 17:35 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
alexey_tm пишет: > Возвращаясь к основной теме. Сравнивать TL/SQL и PL/SQL не кореектно, > никто не сравнивает basic и c++. Почему это некорректно? У бейсика и с++ все-таки разные целевые аудитории и задачи, для которых они создавались, а TransactSQL и PL/SQL имеют более близкие цели - реализация логики на серверах баз данных. Так что сравнивать очень даже корректно. P.S. Может для разнообразия еще Watcom SQL добавим? :) Как он соотносится с TransactSQL обсуждать, правда, совсем не интересно, а вот сравнить с PL/SQL все же было бы любопытно. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 17:54 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
LongsvanoТут вам уже ответили. Да неужто? Между моим сообщением (когда явно "еще не ответили") и Вашим (когда вроде как "уже ответили") ровно одно письмо, при этом это ответ Apex-у от locky. Полагаете, я - виртуал Apex-а? LongsvanoВообще как это разрешение имен реализуется по-уму на низком уровне: Хм. Ну-ну. Комментировать сказанное Вами не хочется - там.. есть неудачные места, но главный вопрос в том, что Вы просто не поняли, о чем я говорю. LongsvanoПо-моему это недоработка или кривизна или косяк. О чем собственно я и говорил. Разумеется, Вы имеете право так считать. Сугубо технически любую концепцию можно назвать именно так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 18:17 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
авторКомментировать сказанное Вами не хочется - там.. есть неудачные места, но главный вопрос в том, что Вы просто не поняли, о чем я говорю. Комментарии не требуется. Посмотрите какой asm код получается на выходе С++ компилятора для функций. Убедитесь. Принимать мои слова на веру я вас не заставляю. И я понял что вы говорите. Вы отстаиваете концепцию которую избрал Оракл. Я считаю что она убога и разрешить ее можно было одновременно как в вашу пользу, так и в мою, то есть так, чтобы работал и ваш пример и мой. Однако, зная как медленно развивается PL/SQL, что он до сих пор не может банально повторить концекции С 30-и летней давности или Perl-a 10-и летней давности, то остается только брюзжать. Однако, давайте пожмем друг другу руки. Спасибо за хороший тред. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 18:35 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
Longsvano Поправлюсь. "Не поняли" - пожалуй, неверно, скорее "не оценили". Вы хотите некоторого определенного поведения (поиск максимально подходящего кандидата при минимальных усилиях программиста). Технически, разумеется, это легко реализуемо. Это поведение обладает определенным недостатком - возможностью легко сделать ошибку. Я привел простой пример, если привести чуть более сложный (функции определены в двух блоках, а используются в третьем), логика затмения не спасет от указанной мной проблемы скрытого изменения. Разумеется, предпочитаемая Вами концепция имеет право на жизнь. Но это совершенно не повод считать другую (и имхо - лучшую) кривой. Из вариантов "можно сделать А, защищен от Б" и "можно сделать А, нет защиты от Б" я почему-то предпочитаю первый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 18:40 |
|
||
|
PL/sql и T/sql
|
|||
|---|---|---|---|
|
#18+
Longsvanoи разрешить ее можно было одновременно как в вашу пользу, так и в мою, то есть так, чтобы работал и ваш пример и мой. Нельзя. LongsvanoОднако, зная как медленно развивается PL/SQL, что он до сих пор не может банально повторить концекции С 30-и летней давности или Perl-a 10-и летней давности, то остается только брюзжать. PL/SQL в основном повторяет концепции ADA 25-летней давности. И совершенно не собирается повторять концепции одного опасного языка и одного плохого языка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2006, 18:42 |
|
||
|
|

start [/forum/topic.php?fid=35&msg=33766698&tid=1553578]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
78ms |
get tp. blocked users: |
1ms |
| others: | 190ms |
| total: | 361ms |

| 0 / 0 |
