|
|
|
Sybase ASE: constraints. Странное контексто-зависимое поведение
|
|||
|---|---|---|---|
|
#18+
Понятно, что задача растет из не совсем корректной реализации, но интересный эффект. Создаем таблицу, в которой поля могут быть NULL и забиваем ее данными. Код: sql 1. 2. 3. 4. вдруг решаем, что довольно безобразия - отныне в ID никогда не должны попадать NULL, но уже там существующие - пусть живут. имплементируем это незатейливым способом (сразу отмечу, ноль выбран чисто как показательный пример и понятно, что мы здесь еще и его отсекаем, но суть не в этом) Код: sql 1. 2. тут начинается интересное: Код: sql 1. 2. Валится с ошибкой по констреинту. но если делаем так: Код: sql 1. 2. продолжаем успешно забивать таблицу нуллами. Т.е. ежели колонку явно указать в инсерт/апдейте и определить как = NULL - констреинт побоку. Ежели колонка явно в запросе не указана - хватаем (в какой-то степени ожидаемый) эксепшен. ИМХО, странное поведение, ожидается, что всегда будет эксепшен, либо уже пятница сказывается... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2017, 19:56 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=39398453&tid=2009675]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
2ms |
| others: | 252ms |
| total: | 367ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...