You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sybase同表触发器创建需求:插入Type=A时自动生成Type=B的记录

Sybase 触发器实现:插入Type=A时自动生成Type=B的记录

以下是满足需求的触发器实现代码,请根据你的实际表结构替换占位符:

CREATE TRIGGER trg_auto_insert_type_b
ON your_target_table -- 替换为你的表名
FOR INSERT
AS
BEGIN
    -- 关闭计数返回,避免干扰调用逻辑
    SET NOCOUNT ON

    -- 仅处理插入记录中Type为A的条目,生成对应Type=B的记录
    INSERT INTO your_target_table (
        Type,
        col1, col2, col3 -- 替换为表中除Type外的所有字段
    )
    SELECT
        'B' AS Type,
        col1, col2, col3 -- 与上方字段列表一一对应
    FROM inserted
    WHERE inserted.Type = 'A'
END
GO

重要注意事项:

  • 批量插入兼容:基于inserted系统表处理,支持一次性插入多条Type=A的记录,每条都会自动生成对应的Type=B记录
  • 字段一致性:必须保证INSERT和SELECT中的字段列表完全匹配,遗漏字段会导致插入失败
  • 权限要求:创建触发器的账号需要CREATE TRIGGER权限,同时需具备目标表的INSERT权限
  • 递归触发规避:Sybase默认禁用触发器递归(除非手动开启recursive triggers配置),因此无需担心Type=B的插入会再次触发该触发器

内容的提问来源于stack exchange,提问作者user19589616

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 07:21:34