0

これは、SQL Server 2008 データベースで XML 列を使用してみるのが新しいことです。これに関連する投稿はほとんど見たことがありませんが、難しいと思います。

私の質問を最も簡単な形で言いましょう。

  1. 列 EmailID(nVarchar(128))、ClientID(int)、cycleXML(XML) を持つデータベース テーブル dbo.cXML があります。

  2. 私のミドルウェア コンポーネントは、複雑なビジネス ロジックを実装し、ロジック処理後に XML を吐き出します。

  3. 今、私は以下を必要とする要件を持っています:

a) 上記の表のチェックを実行して、特定の EmailID とクライアント ID の XML が既に存在するかどうかを確認するためのパラメーターが配置されたストアド プロシージャ。レコードが存在する場合は、更新クエリを使用して XML 全体を更新します。それ以外の場合は、単純に XML を挿入します。

b) 要求に応じて、完全な XML をミドルウェア コンポーネントに送り返すことができるストアド プロシージャ。

誰かが疑似コードを理解するのを手伝ってくれますか? あなたの助けに感謝。

ありがとう、ヤギャ

4

1 に答える 1

0

要件 3b の意味がよくわかりませんが、これは役に立ちますか?

IF EXISTS (SELECT 1 FROM dbo.cXML WHERE EmailID = @YourEmailID AND ClientID = @YourClientID)
BEGIN
    UPDATE dbo.cXML
    SET cycleXML = @YourXML
    WHERE EmailID = @YourEmailID AND ClientID = @YourClientID
END
ELSE BEGIN
    INSERT INTO dbo.cXML (EmailID, ClientID, cycleXML)
    SELECT @YourEmailID, @YourClientID, @YourXML
END
于 2012-08-24T17:01:24.573 に答える