这是对这个问题的小小退缩。 有没有更简单的方法来实现 SQL 语句“INSERT INTO”到整个表而不需要手动指定表列?
使用 INSERT INTO 时,您可以只键入表名称而不指定列,但您似乎仍然需要单独键入每个列的数据。
是否可以只插入一个包含所有列的对象?
我正在使用 supabase 函数,对于参数,我可以指定收到的对象的类型。在调用该函数的 API 中,我为表创建一个新的行条目,填充所有列并将整个行条目发送到数据库函数!
数据库函数接收整行作为一个参数。
我是否应该能够插入整个对象而无需键入每一列?
create or replace function test_function(data table_type)
insert into table_type
values (data); -- <= This should be possible but it errors
-- and seems to be trying to put the entire object just in the first column!
这行得通吗?
insert into table_type data;