Вопрос: Есть ли способ вставить строку в таблицу PostgreSQL, используя значения по умолчанию для всех столбцов без указания имени столбца?
Фон: ЕслиУ меня есть таблица с двумя столбцами, которые имеют значения по умолчанию (или просто принимают NULL), я могу опустить имя столбца при вставке строки, если я хочу, чтобы значение для этого столбца было значением по умолчанию.Например:
CREATE TABLE test_table ( column1 TEXT, column2 TEXT );
Я могу вставить в таблицу, указав только значение для column1 или column2, а в отсутствующий столбец будет добавлено значение по умолчанию (в данном случае NULL):
INSERT INTO test_table (column1) VALUES ('foo');
INSERT INTO test_table (column2) VALUES ('bar');
Выше приведено две строки: [('foo', NULL), (NULL, 'bar')].Однако, если я хочу использовать значение по умолчанию для обоих столбцов, кажется, что мне нужно указать хотя бы одно имя столбца и явно присвоить ему значение по умолчанию.Следующие команды являются законными:
INSERT INTO test_table (column1) VALUES (DEFAULT);
INSERT INTO test_table (column2) VALUES (DEFAULT);
INSERT INTO test_table (column1, column2) VALUES (DEFAULT, DEFAULT);
Мне не удалось создать допустимую команду, которая позволила бы мне опустить все имена столбцов.Все следующие попытки незаконны:
INSERT INTO test_table;
INSERT INTO test_table () VALUES ();
Есть ли способ сделать это или это явно запрещено?Я не смог найти никакой документации для такого случая.Спасибо!