热门:网页模板.net视频教程JQueryMVCjsonExtJs源码示例三级联动JQuery菜单
您现在的位置:.Net中文社区>> 数据库>>正文内容

标准触发器的书写形式

发布时间:2009年02月04日点击数: 未知
create trigger trg_T1_i ON T1 FOR INSERT  
AS

DECLARE @rc AS INT;
SET @rc = @@rowcount;

IF @rc = 0 RETURN;

DECLARE @keycol AS INT, @datacol AS VARCHAR(10);

IF @rc = 1 -- single row
BEGIN
  SELECT @keycol = keycol, @datacol = datacol FROM inserted;
  PRINT 'Handling keycol: '
    + CAST(@keycol AS VARCHAR(10))
    + ', datacol: ' + @datacol;
END
ELSE -- multi row
BEGIN
  SELECT * INTO #I FROM inserted;
  CREATE UNIQUE CLUSTERED INDEX idx_keycol ON #I(keycol);

  SELECT @keycol = keycol, @datacol = datacol
  FROM (SELECT TOP (1) keycol, datacol
        FROM #I
        ORDER BY keycol) AS D;

  WHILE @@rowcount > 0
  BEGIN
    PRINT 'Handling keycol: '
      + CAST(@keycol AS VARCHAR(10))
      + ', datacol: ' + @datacol;

    SELECT @keycol = keycol, @datacol = datacol
    FROM (SELECT TOP (1) keycol, datacol
          FROM #I
          WHERE keycol > @keycol
          ORDER BY keycol) AS D;
  END
END
GO

本站热点业务

更多模板/案例展示

关于我们 | 联系我们 | 团队日志 | 网站地图 | 网站合作