TSQL / SP INSERTステートメントとテキスト

sql sql-server sql-server-2005 stored-procedures tsql

こんにちは、

値データがテキストと変数/入力の組み合わせであることを必要とするストアドプロシージャのinsertステートメントがあります。 しかし、私のSQLマネージャは、それをコンパイルしようとするときにこの ‘camp’値にエラーを出しています。

これは現在存在している文です。

TBL_DONATIONSへのBEGIN TRAN挿入([donations_MemberID]、[donation_Ref]、[donations_Debit])値(@tmp_Id、 "camp" @tmp_Id "/ Key" @tmp_IDENTITY、@ tmp_Pledge)

おそらく ‘camp’ @tmp_Id ‘/ Key’ @tmp_IDENTITY ‘を構成する部分を連結するために間違ったフォーマットを使用しているのが私の場合だと思います。

どんな援助も大いに歓迎しました。

ありがとうございます。

  0  1


ベストアンサー

「」の代わりに「」を使用する必要があると思います

編集:値を “”にしたい場合は、

QUOTED_IDENTIFIERをOFFに設定
http://doc.ddart.net/mssql/sql70/set-set_30.htm[SET QUOTED_IDENTIFIER]

3


正確なエラーは何ですか?

これ以上の情報がない場合は、次の変数をキャストする必要があります。これは、使用する命名規則により、それらが整数であると信じられ、文字列と連結されているためです。

  • @tmp_Id

  • @tmp_IDENTITY

これを試してください。 ‘camp’ CAST(varcharとして@tmp_Id)/ Key ‘CAST(varcharとして@tmp_IDENTITY)

3


一重引用符を使用してください。

2


*値をVALUES句に固定する前に値を準備する必要があります。または、値をINSERT INTOに変更する必要があります。 SELECT …​ 問い合わせます。

*後者の方が簡単です。

編集:そして二重引用符ではなく、一重引用符を使用してください。

1


タイトルとURLをコピーしました