172 похожих чатов

Люди, можно как-то при insert ... select ... проигнорировать те

записи, для которых check constraint зарубил возможность вставки? не получается сделать ON conflict ON constraint ck_attribute_value_check DO NOTHING

11 ответов

9 просмотров

А, не, перепутал. Ну, привести одно к другому.

Вообще, покажы \d -- будет понятнее. Но по идее -- всего-то (...fields...)::attribute_values

Anton-Petrusevich Автор вопроса
Ilya Anfimov
А, не, перепутал. Ну, привести одно к другому.

непонятно. функция должна принимать произвольный рекорд, но как только она вызывается в констрейнте, то получается привязка какая-то

Anton Petrusevich
непонятно. функция должна принимать произвольный р...

Этого не можэт быть. Покажы \d и как ты это в SELECT пытаешься вызвать.

Anton-Petrusevich Автор вопроса
Ilya Anfimov
Вообще, покажы \d -- будет понятнее. Но по идее -...

alter table attribute_values add constraint ck_attribute_value_check check (attribute_value_check(attribute_values) = true);

2249/16 argtypes/rettype. Всё вроде как надо.

Anton-Petrusevich Автор вопроса
Ilya Anfimov
2249/16 argtypes/rettype. Всё вроде как надо.

прототип: create or replace function attribute_value_check(val record) returns boolean as $$

Кстати, собирать минимальный тэстовый запрос можно снизу начать. Просто эта табличка и WHERE твой attribute_value_check.

Anton-Petrusevich Автор вопроса
Ilya Anfimov
Кстати, собирать минимальный тэстовый запрос можно...

если закомментировать with ..., то селект ниже работает...

Баг, отражённый в документацыи, считается фичей: The mutable nature of record variables presents another problem in this connection. When fields of a record variable are used in expressions or statements, the data types of the fields must not change from one call of the function to the next, since each expression will be analyzed using the data type that is present when the expression is first reached. EXECUTE can be used to get around this problem when necessary. https://www.postgresql.org/docs/current/plpgsql-implementation.html#PLPGSQL-PLAN-CACHING

Anton-Petrusevich Автор вопроса
Ilya Anfimov
Баг, отражённый в документацыи, считается фичей: ...

оу... насколько плохо такое решение? https://sqlize.online/sql/psql15/29f285ddc7c3a66f7eb2d1dfcf9d801a/

Похожие вопросы

Обсуждают сегодня

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
открыть папку в проводнике: 1 - ShellExecute 2 - ExecuteProcess 3 - OpenDocument что лучше выбрать?
Alexey Kulakov
12
еще вопрос, допустим мы создадим char массив из 10 элементов и присвоим ему через сканф 10 символов. и выведем все символы. Хотел спросить последний элемент /0 будет включать...
Anthem
10
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Где в Астане можно купить мясо для шашлыков?
Dancing Іңұқәһүғө
21
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
Карта сайта