Когда я запускаю следующий код SQL:
INSERT INTO table
(column1, column1)
SELECT column1, column2
FROM other_table
WHERE column2 = 'foo'
ON CONFLICT DO NOTHING;
Я получаю
PG::CheckViolation: ERROR:
new row for relation "table" violates
check constraint "tables_column1_valid_first_char"
Как мне пропустить строки, нарушающие это проверочное ограничение?
Я пытался
INSERT INTO table
(column1, column1)
SELECT column1, column2
FROM other_table
WHERE column2 = 'foo'
ON CONFLICT ON CONSTRAINT tables_column1_valid_first_char DO NOTHING;
Но это не с
PG::WrongObjectType: ERROR:
constraint in ON CONFLICT clause has no associated index
Ограничение выглядит следующим образом:
ADD CONSTRAINT tables_column1_valid_first_char
CHECK (SUBSTRING(text, 1,1) ~* '^[a-zàâçéèêëîïôûùüÿæœ]');