Форум: "Базы";
Текущий архив: 2008.11.02;
Скачать: [xml.tar.bz2];
ВнизPL/SQL и кирилица Найти похожие ветки
← →
keymaster © (2008-04-18 16:44) [0]Допустимо ли такое использование кирилицы в PL/SQL?
.....
if mytable.myfield="Ы" then
.....
Сам так никогда не извращаюсь.
Просто интересно послушать, что скажут умные люди.
← →
Игорь Шевченко © (2008-04-18 16:45) [1]вполне
← →
keymaster © (2008-04-18 16:49) [2]Странно, но мне кажется, что допустимо, но "не правильно".
← →
keymaster © (2008-04-18 17:12) [3]Требуется уточнение.
Данные, описывающие некоторую сущность, живут в одной таблице.
И есть поле - NameFull, где живёт имя.
Собственно, вопрос в том, можно ли, зная, что в данный момент все имена начинаются с "Ы" использовать такую конструкцию в хранимке на PL/SQL
(проверка первого символа имени поля на равенство "Ы")?
Особенно, учитывая тот факт, что юзерский интерфейс приложения допускает смену любого наименования, что приведёт к неработоспособности функционала.
← →
Игорь Шевченко © (2008-04-18 22:48) [4]
> Собственно, вопрос в том, можно ли, зная, что в данный момент
> все имена начинаются с "Ы" использовать такую конструкцию
> в хранимке на PL/SQL
> (проверка первого символа имени поля на равенство "Ы")?
первый символ поля проверяется как SUBSTR(mytable.myfield,1,1) = "Ы"
Ответ на вопрос - можно. Но если завтра имена будут начинаться на "Ъ", то хранимку придется переписывать.
← →
keymaster © (2008-04-19 09:10) [5]Вот именно из-за того, что "хранимку придется переписывать", я и считаю, что использование аналогичных конструкций не есть правильно.
← →
Кщд (2008-04-21 06:39) [6]>keymaster © (19.04.08 09:10) [5]
это называется хардкод
причем здесь кириллица?
← →
keymaster © (2008-04-21 10:07) [7]
> это называется хардкодпричем здесь кириллица?
Использование кирилицы - частный случай хардкода.
← →
Kolan © (2008-04-21 10:21) [8]> Использование кирилицы — частный случай хардкода.
Передавай параметром…
← →
keymaster © (2008-04-21 11:08) [9]Я всегда параметры использую.
← →
ANB (2008-04-21 12:00) [10]
> keymaster © (21.04.08 11:08) [9]
> Я всегда параметры использую.
Если их есть кому передать. :)
ИМХО : проблема не подходе к использованию кирилицы, а в неправильной архитектуре БД (алгоритм поиска может поменятся из-за изменения вносимых данных).
Использование кирилицы в литералах на пл/скл вполне допустимо.
Правило хорошего тона : если литерал используется в коде несколько раз - засунь его в константу, будет легче править.
да, кстати, поиск по первому символу в поле делается не через ИФ, а через
select * from T1 where FIO like "Ы%".
← →
Кщд (2008-04-21 12:54) [11]
> keymaster © (21.04.08 10:07) [7]
> Использование кирилицы - частный случай хардкода.
в чем вопрос-то?
можно или нет использовать в коде if mytable.myfield="Ы" then?
ответ: да, можно, используйте)
только аккуратнее при экспорте/импорте
можете и переменные/программные юниты/таблицы/поля в кириллице называть - кто ж запретит-то?
← →
keymaster © (2008-04-21 13:25) [12]"Можно/неможно" - вопрос не о том, "проглотит" это компилятор или нет.
Такая конструкция синтаксически допустима.
Вопрос, скорее, из области "хорошо ли так делать".
Я вообще противник хардкода.
← →
Kolan © (2008-04-21 13:28) [13]> Я вообще противник хардкода.
Зависит от задачи. Ищи точки вариации в них и предусматривай возможность расширения. В остальных места — зачем?
← →
ANB (2008-04-21 13:29) [14]
> Вопрос, скорее, из области "хорошо ли так делать".
Вполне нормально и не всегда это хардкорд.
Зависит от задачи. Если этот литерал потом будет меняться - надо подумать насчет справочника настроек. А лучше вообще вынести признак в отдельное поле.
← →
Кщд (2008-04-21 13:43) [15]>keymaster © (21.04.08 13:25) [12]
тогда и тема должна звучать, например, так: хардкод - "за" и "против"))
хардкод допустим и уместен там, где он допустим и уместен
для Вашего конкретного случая дать какой-либо однозначный совет не представляется возможным, ибо нет конкретики
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2008.11.02;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c