0

Visual Studio 2008 プロジェクトを使用して、SQL Server 2008 ウェアハウス データベースを作成および管理しています。

プロジェクトをデプロイしようとすると、次のようなエラーが発生します

Creating DataWarehouseReports...
Company.HigherEducation.DataWarehouse.dbschema(0,0)Error TSD01268: .Net SqlClient Data Provider: Msg 2714, Level 16, State 6, Line 2 There is already an object named 'DataWarehouseReports' in the database.
Company.HigherEducation.DataWarehouse.dbschema(0,0)Error TSD01268: .Net SqlClient Data Provider: Msg 2759, Level 16, State 0, Line 2 CREATE SCHEMA failed due to previous errors.
An error occurred while the batch was being executed.
Done executing task "SqlDeployTask" -- FAILED.
Done building target "DspDeploy" in project "Company.HigherEducation.DataWarehouse.dbproj" -- FAILED.
Done executing task "CallTarget" -- FAILED.
Done building target "DBDeploy" in project "Company.HigherEducation.DataWarehouse.dbproj" -- FAILED.
Done building project "Company.HigherEducation.DataWarehouse.dbproj" -- FAILED.

私が見つけたのは、DataWarehouseReports レポート スキーマがマスター データベースに存在することです (誤って付与されました) が、OLAP データベースで作成しようとすると「重複」エラーが発生します。

開発中、私の OLAP データベースと OLTP データベースは同じサーバー上にあり、スキーマ名に関して同じ問題が発生します。今のところ、OLTP と OLAP でスキーマに異なる名前を付けていますが、一貫性を保つために同じ名前を使用したいと考えています。

これをデバッグするにはどうすればよいですか?

編集:PEBCACアラート

データベース コンテキストを MASTER に変更する配置前の SQL スクリプトがあることがわかりました。スクリプトが失敗していたため、コンテキストが元に戻されませんでした。

したがって、スクリプトの残りの部分が実行されたとき、実際にはマスターですべてを作成しようとしていました。

教訓: プロジェクトのデプロイ時に出力を読みます。

4

1 に答える 1

0

基本的に、VS2008 プロジェクトは .SQL ファイルを作成し、変更 DB は DB が作成される場所にのみ存在します。展開前のコンテキストを変更した場合、元に戻すのはユーザー次第です。

于 2009-08-03T20:35:43.937 に答える