Четыре точки не являются синтаксически действительными: -D
Надежный способ такой же, как и для любого другого оператора INSERT: перечислить столбцы и значения.
EXEC SQL INSERT INTO SomeTable(Col1, Col2, Col3) VALUES(:hv1, :hv2, :hv3);
Здесь:: hv1,: hv2 и: hv3 представляют три переменные хоста типов, соответствующих столбцам в таблице. Обратите внимание, что таблица может содержать столбцы, отличные от этих трех, при условии, что для этих столбцов задано значение по умолчанию или принимается значение NULL (в данном случае это просто значение по умолчанию) Ненадежный способ не перечисляет столбцы:
EXEC SQL INSERT INTO SomeTable VALUES(:hv1, :hv2, :hv3);
Теперь вы зависите от правильности последовательности и должны предоставить значение для каждого столбца - в SomeTable не может быть дополнительных столбцов.