質問が他の場所で既に回答されている場合はお詫びしますが、運が悪くて周りを見回しています。mvc3 と c# を使用して、データベース テーブルが既に存在するかどうかを確認しようとしています。
そして、私は次のSQLをresxファイルに入れて呼び出しています:
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[%tableName%]') AND type in (N'U'))
SELECT 1
ELSE
SELECT 0
これは Management Studio では正常に動作しますが、私の c# プロジェクトではうまく動作しません。ここでは、次のように呼び出します。
public bool GetIsInstalled(string tableName)
{
return _db.ExecuteCommand(Scripts.CheckIfInstalled.Replace("%tableName%", tableName))==1;
}
メソッドをデバッグすると、返される値は実際には -1 になるので、どこかに問題があるのではないでしょうか? コマンドではなくクエリを実行する必要があるのではないかと考えていましたか? 誰かがこれを手伝ってくれますか、可能であればコード例を提供してください。