したがってScope_Identity()はSQL Serverで?-Byte数値型を返します。Scope_Identity()をIntにキャストする方法を教えてください。
これは素晴らしいものではありません。
ODBC WrapperでSQL Serverのすべての機能を管理する必要がないように、選択クエリでint型にキャストする安全な方法はありますか?
したがってScope_Identity()はSQL Serverで?-Byte数値型を返します。Scope_Identity()をIntにキャストする方法を教えてください。
これは素晴らしいものではありません。
ODBC WrapperでSQL Serverのすべての機能を管理する必要がないように、選択クエリでint型にキャストする安全な方法はありますか?
を(あなたはそれが32ビット整数に収まる知っ提供)、それをキャストする必要はありません。次は、ID列がIntegerで始まるか、または "Int"の内部に収まると仮定してうまく動作します。
DECLARE @NewIdent Int
SET @NewIdent = SCOPE_IDENTITY()
SELECT CAST(bigintcolumn AS int)
アイデンティティが属するソース列が整数の場合
。 T'は0を返しています。 –
はちょうどこのようにキャスト:
select CAST(SCOPE_IDENTITY() as int)
そして、あなたのデータレイヤ:
私はそれはしかし動作しない理由を私はわからない、と思ったものだreader.GetInt32(0);
キャストはNewIdentに割り当てる過程で世話をしますが、まだキャストしています。 – lowerkey
それは私のために働かない、SQL2016、それはちょうど10進数(18,0)私のために返す、私はそれをintに変換しなければならなかった –