2

SQL Server 2012 をターゲットとする Visual Studio 2010 のデータベース プロジェクトがあり、ストアド プロシージャの少なくとも 1 つで、エラーを再スローするための新しい構文 ("THROW;") が使用されています。

次のようにコマンドラインからプロジェクトをビルドしようとしています:

msbuild /t:Build MyDatabaseProject.dbproj

これを出力します:

Microsoft (R) Build Engine Version 4.0.30319.1
[Microsoft .NET Framework, Version 4.0.30319.269]
Copyright (C) Microsoft Corporation 2007. All rights reserved.

Build started 28.08.2012 13:14:23.
Project "F:\My\Path\MyDatabaseProject.dbproj" on node 1 (Build target(s)).
DspBuild:
  Creating a model to represent the project...
  Loading project files...
  Building the project model and resolving object interdependencies...
  Validating the project model...
F:\MY\PATH\SCHEMA OBJECTS\SCHEMAS\DBO\PROGRAMMABILITY\STORED PROCEDURES\SOMEPROC.PROC.SQL(95,3,95,3): Build error SQL02010: Incorrect syntax near THROW. [F:\My\Path\MyDatabaseProject.dbproj]
...

私の推測では、SQL Server 2012 T-SQL 方言を指定するパラメーターを追加する必要がありますが、これについてはわかりません。

Visual Studio からのプロジェクトのビルドは問題なく機能します。


更新: 私が持っているプロジェクトの種類が正確にはわかりません。プロジェクトのプロパティは次のようになります。

ここに画像の説明を入力

追加データ :

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

4

1 に答える 1

3

SQL Server 2008 までしかサポートしない古いデータベース プロジェクト タイプを使用しているようです。Visual Studio 2010 用の SQL Server 2012 (非常に一般的な名前「SQL Server データベース プロジェクト」) をサポートする新しいデータベース プロジェクト タイプがあります。SQL Server Data Toolsの最新バージョンの一部としてインストールできます。

新しいプロジェクト タイプには、ここで見つけることができる別のコマンド ライン構文が必要です。

ちなみに、Visual Studio では、既存のデータベース プロジェクトを新しいプロジェクト タイプに簡単に変換できます。

于 2012-08-28T19:10:04.410 に答える