0

このストアド プロシージャを作成しました。

今私がやりたいことは、テーブル内に同様のタイプのレコードが存在する場合は常に置き換えることです。

これがspです。

USE [DBName]
GO

CREATE procedure [dbo].[InsertDD]
(
    @ColumnA varchar(1000), 
    @ColumnB varchar(1000),
    @CurrentDateAndTime datetime

)
AS

INSERT Into TableName
(
    ColumnA,    
    ColumnB,
    CurrentDateAndTime
)
Values
(
    @ColumnA,   
    @ColumnB,
    @CurrentDateAndTime
)

ここで、テーブルに既に列 B の値がある場合 (大文字または小文字などの文字の違いに関係なく)、CurrentDateAndTime値を更新するだけです。

そうでない場合は、単純に 3 つの値を追加します。

4

2 に答える 2

0

IF ... EXISTS コマンドを検索してください。最終的には、MERGE ステートメントを使用することもできます。これは、SELECT を使用して行が既に存在するかどうかを判断し、UPDATE を実行できます。

于 2013-02-18T11:47:46.380 に答える