sql >> データベース >  >> RDS >> Sqlserver

一括挿入の発火トリガー

    次のようにカーソルを使用できます:

    create trigger trg_insertstuff
    on [O_SALESMAN]
    after insert
    as
    
      DECLARE @SLSMAN_CD NVARCHAR(20)
        DECLARE @SLSMAN_NAME NVARCHAR(20)
    
    
     declare db_cursor CURSOR FOR  
    SELECT SLSMAN_CD, SLSMAN_NAME
    from inserted
    
    OPEN db_cursor  
    FETCH NEXT FROM db_cursor INTO @SLSMAN_CD , @SLSMAN_NAME 
    
    WHILE @@FETCH_STATUS = 0  
    BEGIN  
    
    IF NOT EXISTS(SELECT * FROM O_SALESMAN_USER WHERE SLSMAN_CD = @SLSMAN_CD)
        BEGIN
            INSERT INTO O_SALESMAN_USER(SLSMAN_CD, PASSWORD, USER_CD)
            VALUES(@SLSMAN_CD, @SLSMAN_CD,@SLSMAN_NAME )
        END
    
    
    FETCH NEXT FROM db_cursor INTO  @SLSMAN_CD , @SLSMAN_NAME 
    end
    
    CLOSE db_cursor  
    DEALLOCATE db_cursor
    


    1. Postgres SELECTの列を連結するにはどうすればよいですか?

    2. Mysql:別の列の下の列の値を表示します

    3. SQL Serverで文字列のすべての出現箇所を別の文字列に置き換える方法– REPLACE()

    4. ORA-01264:ログ・ファイル名を作成できません