|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Большая просьба разъяснить с логическим обоснованием - с чем связано отсутствие данной возможности? Могу задать ограничение CHECK для домена или для таблицы, а также могу использовать домен с ограничением CHECK при объявлении (DECLARE VARIABLE) переменной внутри SP/EB/Fn, но не могу использовать ограничение CHECK в самом объявлении переменной внутри SP/EB/Fn, например: Код: plsql 1.
Ругается на 'CHECK' - token unknown Почему? Опять стандарт? З.Ы. Тему так назвал, чтобы для подобных вопросов по сто тысяч раз не создавать. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:14 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
а шо там у Оракела? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:19 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Мимопроходящий, а причём тут Оракел, который сам под себя стандарты лабает, когда у нас Огнептиц? Почему Оракел - законодатель, а не комьюнити? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:22 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
23.09.2019 14:22, rdb_dev пишет: > Мимопроходящий, а причём тут Оракел, который сам под себя стандарты лабает, когда у нас Огнептиц? Почему Оракел - законодатель, а не комьюнити? завыл матерно, напился, набил рожу вопрошавшему, долго бился головой об стенку, в общем, ушел от ответа... (С) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:25 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_dev, ИХМО, DECLARE VARIABLE внутри PSQL с ограничениями не имеет смысла. Ты и так там можешь всё проверить с помощью IF и бросить нормальное исключение с понятным текстом, а не непонятное системное. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:25 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_devа причём тут Оракел, который сам под себя стандарты лабает, когда у нас Огнептиц? Ну ок, а что там у стандарта? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:29 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_devБольшая просьба разъяснить с логическим обоснованием - с чем связано отсутствие данной возможности? Могу задать ограничение CHECK для домена или для таблицы, а также могу использовать домен с ограничением CHECK при объявлении (DECLARE VARIABLE) переменной внутри SP/EB/Fn, но не могу использовать ограничение CHECK в самом объявлении переменной внутри SP/EB/Fn Патамушта Check - это триггер. Я так дуиаю (С). ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:31 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Симонов Денис, конечно могу! Могу вместо выплёвывания стандартного EXCEPTION на нарушение ограничения CHECK определить свой EXCEPTION, проверить в операторе IF и выплюнуть этот свой EXCEPTION. Или могу создать свой домен с CHECK и использовать его при объявлении переменной внутри SP/EB/Fn. Могу... Но хотелось бы иметь геморрой поменьше. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:34 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovНу ок, а что там у стандарта?А что у нас, обычно, помещают в стандарт? То, что, в большинстве случаев, уже используется де-факто у "законодателей"? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:36 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
23.09.2019 14:34, rdb_dev пишет: > хотелось бы иметь геморрой поменьше. Релиф! (С) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:37 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_devПочему Оракел - законодатель, а не комьюнити? комьюнити эта твоя супер фича на фиг не упёрлась. Иначе бы давно попросили. И я кстати против такой возможности ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:39 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
МимопроходящийРелиф! (С)Оценил! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:40 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_devНо хотелось бы иметь геморрой поменьше. такая возможность наоборот повысит вероятность геморроя на ровном месте. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:42 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Симонов Денискомьюнити эта твоя супер фича на фиг не упёрлась. Иначе бы давно попросили. И я кстати против такой возможностиНу, какая же это "суперфича"? На таковую не тянет... Почему-то при объявлении таблицы: Код: plsql 1.
или при объявлении домена: Код: plsql 1.
, так в порядке вещей, а как для DECLARE VARIABLE, так сразу "суперфича"? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:45 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
собственно говоря, пофигу что там с геморроями. вопрос упирается в то, КТО и за каким *** будет ЭТО реализовывать? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:46 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Мимопроходящий, ответ на вопрос "Кто?" - очевиден, а ответ "за каким...?" я уже дал. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:50 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
23.09.2019 14:50, rdb_dev пишет: > а ответ "за каким...?" я уже дал. не-а. пока прозвучало лишь "ДАЙТЕ!" Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:52 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Мимопроходящий, нет! Пока что прозвучало обоснованное "Почему?" ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:53 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_dev, возможно, я идиотский ответ дам, но всё же дам: - столбец таблицы - это не переменная. - у переменных в компилируемых ЯП нет никаких подобных ограничений. поэтому check для declare variable выглядит как "зуб в носу" (с). p.s. нунах... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:55 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_dev, ну ладно. Смотри в стандарте для таблиц и доменов ограничение CHECK явно определено ещё в SQL-92. Что касается хранимых процедур, то их вовсе в стандарте не было до SQL-99. В СУБД различных вендоров они появились давно. Так вот в стандарте нет ничего насчёт DECLARE VARIABLE. Вообще ничего. К слову если бы у нас курсоры были только по стандарту, то ты бы обплевался хранимки писать, ибо FOR SELECT там как раз нету. Все вендоры делали язык хранимок на своё усмотрение. Позже кое-что в него стали вносить из стандарта, но основа всё равно осталось своя. Так вот, до тебя не было людей которые считали, что CHECK в DECLARE вообще нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:57 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
kdv, а как CHECK выглядит для домена, который, к примеру, используется только в DECLARE VARIABLE? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:58 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Симонов Денис, ведь можете, когда хотите! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 14:59 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Симонов ДенисВсе вендоры делали язык хранимок на своё усмотрение. Позже кое-что в него стали вносить из стандарта, но основа всё равно осталось своя. Так вот, до тебя не было людей которые считали, что CHECK в DECLARE вообще нужно.Обойдусь пока - не горит... Но хотелось бы - для большего единообразия объявлений и удобства. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 15:02 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
rdb_dev, и кстати домен это не тип данных!!! Это просто тиражируемое ограничение на столбец, чтобы многократно можно было использовать в нескольких таблицах. По доброте душевной их дали использовать в PSQL, хотя самое правильное делать TYPE OF DOMAIN или TYPE OF COLUMN, а как раз ограничения от доменов в PSQL часто мешают. Особенно какой-нибудь NOT NULL kdvp.s. нунах... +100500 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 15:04 |
|
Сто тысяч "Почему так реализовано?"
|
|||
---|---|---|---|
#18+
Симонов Денис, вот уж нет! Исходя из твоего описания TYPE OF и тиражируемости на переменные внутри SP/EB/Fn, это именно тип данных с проверкой ограничения, подобно типам с проверкой в таких RTL, как JVM или .Net ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 15:11 |
|
|
start [/forum/topic.php?fid=40&fpage=20&tid=1560567]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 151ms |
0 / 0 |