powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / PL/sql и T/sql
25 сообщений из 134, страница 3 из 6
PL/sql и T/sql
    #33763223
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторДа чем,чем... Тем что когда-то под эту струкртуру отвели 30 байт...

Хмм, оказывается еще и байт.
Господа, въезжающие в тему как оракл работает с юникодом. Означат ли ограниение в 30 байт на идентификатор, что если мы его будем обзывать в национальной кодировке, длина его уменьшится до 15 символов?
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763256
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да уменьшится, но за индификаторы на русском нада однозначно отрывать яйца.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763281
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Longsvano
Хмм, оказывается еще и байт.
Господа, въезжающие в тему как оракл работает с юникодом. Означат ли ограниение в 30 байт на идентификатор, что если мы его будем обзывать в национальной кодировке, длина его уменьшится до 15 символов?
Да.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
SQL> select table_name, column_name, data_type, data_length, char_used, char_length
   2   from dba_tab_columns 
   3   where table_name = 'DBA_TABLES'
   4     and column_name = 'TABLE_NAME';

TABLE_NAME      COLUMN_NAME     DATA_TYPE   DATA_LENGTH CHAR_USED CHAR_LENGTH
--------------- --------------- ----------- ----------- --------- -----------
DBA_TABLES      TABLE_NAME      VARCHAR2              30  B                   30 

SQL> create table "АБВГДЕЁЖЗИКЛМНО" (id varchar2( 8 ));

Table created.

SQL> create table "АБВГДЕЁЖЗИКЛМНОП" (id varchar2( 8 ));
create table "АБВГДЕЁЖЗИКЛМНОП" (id varchar2( 8 ))
             *
ERROR at line  1 :
ORA- 00972 : identifier is too long
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763319
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!!да уменьшится, но за индификаторы на русском нада однозначно отрывать яйца.

А это уже ваши психологические проблемы. Вон ОдинЭсники шустрят со своими русскими именами и ничего.
Йо, это же всего лишь вопрос договоренности между разработчиками (и админом) - как называть идентификаторы - нравятся русские, слава богу, оракл вовсю им этому поспособствует.
Или же вы готовы привести ссылку на доки, где оракл мол "стронгли рекоммендед" не использовать неанглийские идентификаторы?
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763358
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня на одной из баз макс. длина идентификатора - 70 символов (русское
наименование CK, отображающее смысл ограничениения.
также достаточно длинные имена FK - мнемонические.
длинные имена у ХП, сгенерированных фреймвёрком - тоже мнемонические
(префиксы+суффиксы+постфиксы+разные там фиксы/типы).

у тех проц, которые пишу ручками названия обычно не слишком длинные, но
всё-таки бывает...
doc03070201__0201_ClearCustomDutyDiff_act - вполне понятное в рамках
нашей системы наименование процедуры, отображающее тип документа
(03070201), тип спецификации (0201), действие (ClearCustomDutyDiff) и
собственно, поддействие (act). 41 букова. никто не умер, аднака.



--
-------------------------
There's no silver bullet!
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763379
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyу меня на одной из баз макс. длина идентификатора - 70 символов

У вас MSSQL?
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763400
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
locky

у тех проц, которые пишу ручками названия обычно не слишком длинные, но
всё-таки бывает...
doc03070201__0201_ClearCustomDutyDiff_act - вполне понятное в рамках
нашей системы наименование процедуры, отображающее тип документа
(03070201), тип спецификации (0201), действие (ClearCustomDutyDiff) и
собственно, поддействие (act). 41 букова. никто не умер, аднака.


все правильно, другого выхода в mssql нет, поскольку нормального неймспейса в mssql нет вам приходится страдать такой ерундой. в оракле вы бы сделали пакет doc03070201, в который бы объединили все действия с этим типом.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763407
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LongsvanoЙо, это же всего лишь вопрос договоренности между разработчиками (и админом) - как называть идентификаторы

[src oracle]
Connected to Oracle9i Enterprise Edition Release 9.2.0.6.0
Connected as test

SQL> create table laud (x char(1) default 'X');

Table created

SQL> select * from lаud;

ORA-00942: table or view does not exist[/quot]
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763428
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyу меня на одной из баз макс. длина идентификатора - 70 символов
Основной минус ограничения на длину идентификатора - оно мешает вводить конвенции именования объектов в БД. Скажем, если мы говорим, что для таблицы XXX поле ПК должно называться XXX_ID, а индекс - XXX_PK_I, максимально допустимая длина съезжает до 25 символов. Если мы говорим, что развязка многие-ко-многим между А и Б должна называться LINK_A_B - допустимая длина оказывается ограниченной двенадцатью (!) символами. И т. д.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763637
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Longsvano
А это уже ваши психологические проблемы. Вон ОдинЭсники шустрят со своими русскими именами и ничего.

вот если бы им оторвали бы яйца еще на том этапе то небыло бы насвете этой уе****ой файл-серверной поделки которой нужет citrix чтоб хоть как-то шевелится.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763675
Хех...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yo.!! Longsvano
А это уже ваши психологические проблемы. Вон ОдинЭсники шустрят со своими русскими именами и ничего.

вот если бы им оторвали бы яйца еще на том этапе то небыло бы насвете этой уе****ой файл-серверной поделки которой нужет citrix чтоб хоть как-то шевелится.
Долой МТС из 1С!
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763699
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer lockyу меня на одной из баз макс. длина идентификатора - 70 символов
Основной минус ограничения на длину идентификатора - оно мешает вводить конвенции именования объектов в БД.

Вот! Господин Софтварер самую суть ухватил. Ограничение на длину имен не позволет ЕДИНООБРАЗНО именовать объекты. До есть подспудно заставляет плодить зоопарк, а это уже однозначное зло.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763717
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!! Longsvano
А это уже ваши психологические проблемы. Вон ОдинЭсники шустрят со своими русскими именами и ничего.

вот если бы им оторвали бы яйца еще на том этапе то небыло бы насвете этой уе****ой файл-серверной поделки которой нужет citrix чтоб хоть как-то шевелится.

Йо, если 1С - говно, то это никак не доказывает что определние имен на русском языке также плохо.

Вот скажите пожалуйста, почему вам не нравится именование объектов по русски? Только давайте РАЦИОНАЛЬНЫЕ и ОБЪЕКТИВНЫЕ ответы. Ответы, которые можно подвети под "религия запрещает" и ваши личные предпочтения и привычки не принимаются.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763784
Зайцев Фёдор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LongsvanoВот скажите пожалуйста, почему вам не нравится именование объектов по русски? Только давайте РАЦИОНАЛЬНЫЕ и ОБЪЕКТИВНЫЕ ответы. Ответы, которые можно подвети под "религия запрещает" и ваши личные предпочтения и привычки не принимаются.
На самом деле, англоговорящие (к примеру) программеры дают имена переменным/объектам на том языке, на котором говорят и думают.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763786
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LongsvanoВот скажите пожалуйста, почему вам не нравится именование объектов по русски?
Технически возможность русских идентификаторов мне очень не нравится из-за вышеприведенного примера с table does not exists. Практически на тех серверах, на которых я работаю, рано или поздно появляется триггер, запрещающий использование русских букв в именах объектов.

Именование объектов по-русски мне не нравится по двум причинам. Во-первых: если уж корежить язык и издеваться над ним, то я предпочитаю, чтобы это был чужой язык. Здесь также стоит упомянуть, что морфология русского языка, достаточно богатая логика словоформ делают его особенно уязвимой мишенью; если "select from table" - нормальная фраза с точки зрения грамматики английского, то "выбрать из таблица" звучит не то чтобы идеально по-русски. Во-вторых: мое чувство стиля говорит, что

Код: plaintext
select * from table

- нормально, легко читается, в то время как

Код: plaintext
select * from стол

- неоднородное уродство. Отсюда вывод: тогда и ключевые слова, и стандартные функции, и вообще все должно иметь альтернативный русский синтаксис. А такая идея может прийти в голову только больному на эту голову человеку.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763815
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Longsvano
Йо, если 1С - говно, то это никак не доказывает что определние имен на русском языке также плохо.

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

Longsvano
Вот скажите пожалуйста, почему вам не нравится именование объектов по русски? Только давайте РАЦИОНАЛЬНЫЕ и ОБЪЕКТИВНЫЕ ответы. Ответы, которые можно подвети под "религия запрещает" и ваши личные предпочтения и привычки не принимаются.

см. предыдущее объяснение, ну а рационально сходу вот:

http://www.sql.ru/forum/actualthread.aspx?tid=265178&pg=1#2383475
http://www.sql.ru/forum/actualthread.aspx?tid=97523&pg=1#718626
http://www.sql.ru/forum/actualthread.aspx?tid=14984#70670
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763849
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!! Longsvano
Йо, если 1С - говно, то это никак не доказывает что определние имен на русском языке также плохо.

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


Вообщето для 1с - стандарт де-факто писать русскими идентификаторами. Вся стандартная конфа написана на русском.

Longsvano
http://www.sql.ru/forum/actualthread.aspx?tid=265178&pg=1#2383475
http://www.sql.ru/forum/actualthread.aspx?tid=97523&pg=1#718626
http://www.sql.ru/forum/actualthread.aspx?tid=14984#70670

Фигня это а не рациональные доводы. Сводящаяся к тому, что такаято-такая программа криво работает с русским. Учитесь правильным ответам у Софтварера.

Кстате еще довод за английский - если не ошибаюсь аглийский несколько (процентов на 20-30) короче русского.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763861
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Longsvano Yo.!! Longsvano
А это уже ваши психологические проблемы. Вон ОдинЭсники шустрят со своими русскими именами и ничего.

вот если бы им оторвали бы яйца еще на том этапе то небыло бы насвете этой уе****ой файл-серверной поделки которой нужет citrix чтоб хоть как-то шевелится.

Йо, если 1С - говно, то это никак не доказывает что определние имен на русском языке также плохо.

Вот скажите пожалуйста, почему вам не нравится именование объектов по русски? Только давайте РАЦИОНАЛЬНЫЕ и ОБЪЕКТИВНЫЕ ответы. Ответы, которые можно подвети под "религия запрещает" и ваши личные предпочтения и привычки не принимаются.
Для меня единственный агрумент против названий таблиц и процедур по-русски - необходимость постоянно переключать раскладку клавиатуры. Но для других объектов, которых не надо явно использовать в коде - это вполне имеет право на жизнь. Например названия индексов, триггеров, констрейнов
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763909
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quoе]индексов, триггеров, констрейнов[/quot]

Индексы и констраинты лихко могут использоваться в коде.
Индексы - в хинтах, имена констрейнов - при обработке исключений.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33763951
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Longsvano
Фигня это а не рациональные доводы. Сводящаяся к тому, что такаято-такая программа криво работает с русским. Учитесь правильным ответам у Софтварера.

т.е. то что программы небходимые професионалу для работы с субд (типа sourcesafe, erwin и пр.) это фигня, ну что ж, сами себе буратино.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33764587
AI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У оракла где-то было самое простое объяснение, почему не рекомендуется использовать нелатинские символы в названиях идентификаторов. Oracle не гарантирует, что с такими идентификаторами будут работать клиентские приложения третьих фирм.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33764818
Пьяный Лох
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!! Longsvano
Фигня это а не рациональные доводы. Сводящаяся к тому, что такаято-такая программа криво работает с русским. Учитесь правильным ответам у Софтварера.

т.е. то что программы небходимые професионалу для работы с субд (типа sourcesafe, erwin и пр.) это фигня, ну что ж, сами себе буратино.
Впервые слышу о том, что ErWin, а уж тем более SourceSafe - не работают (криво работают) с юникодом вааще и русской кодировкой в частности.
Почему-то все остальные (базы данных) работают с русскими идентификаторами на ура. В том числе и в паре с упомянутыми ЭрВинами и СорсСейфами.

Если Оракал такой убогий, что ниасилил русские буквы - ну так надо это признать, правда ведь, Йо?
Или гордость не позволяет?
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33764949
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, ограничением в 30 с чем-то символов страдает не только Оракл, но и некоторые ЯП, например тот же PHP (при выборке из массива результата запроса), причем никаких сообщений об ошибке не выводится, просто нет значения.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33765094
Фотография Apex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пьяный Лох
Я за такое вот кастрировал бы, чтоб дебилов меньше рождалось.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33765168
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пьяный Лох
пока могу признать, что лошок невьехал о чем взрослые говорят, ну и то что к сожелению оракл работает с уникодными символами в именах, что и создает проблемы.
...
Рейтинг: 0 / 0
25 сообщений из 134, страница 3 из 6
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / PL/sql и T/sql
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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