INSERT、UPDATE 与 DELETE
写查询沿用列所有权和值族约束。没有赋值的 INSERT 或 UPDATE 会在编译阶段失败。
单行与多行 INSERT
多行编译会验证每一行具有相同的列与顺序,然后再把值加入共享参数序列。
冲突处理
冲突目标可以是一列或最多四列的元组。do_nothing、绑定值更新与 excluded 行引用都会保持结构化。MySQL 方言会拒绝这条语法。
UPDATE
UPDATE 不会自动要求过滤条件。全表更新必须由调用方明确构建,建议在应用边界增加策略检查。
表达式赋值与 UPDATE FROM
set_expression 要求表达式输出类型与目标列相同。CTE、赋值、过滤和 RETURNING 使用同一个参数累加器。
DELETE
DELETE 同样允许无过滤条件。生产接口应把全表删除作为单独的受控操作。