0

Visual Studio でデータベース プロジェクトをすばやく開発する方法を見つけたいと考えています。何か案は?

4

3 に答える 3

4

私は Visual Studio 2005 でデータベース プロジェクトを作成および更新する方法を知っていますが、これは常識だと思っていました。何人かの同僚に、この方法でデータベース プロジェクトを更新する方法を知っているかどうか尋ねたところ、いいえという返事が返ってきたので、それについてブログを書いて、役に立つヒントやベスト プラクティスを伝えようと思いました。

私はデータベース、特にビジネス ロジック/データ アクセス .NET フレームワークで使用するように構築されたストアド プロシージャを頻繁に使用しています。私はデータベースを扱うのが好きで、常にデータベース プロジェクトを作成して .NET プロジェクトと連携させています。私は、データベース プロジェクトを最新の状態に保つことに神経質になっています。私は若い頃、削除されたストアド プロシージャを作成する必要があり、データベースを使用するアプリケーションと同期していないストアド プロシージャを作成する必要があり、何度も火傷を負いました。

次のように、Visual Studio 2005 でデータベース プロジェクトを作成した後:

代替テキスト http://www.cloudsocket.com/images/image-thumb16.png

プロジェクトに、テーブル、ストアド プロシージャ、および関数の 3 つの新しいディレクトリを作成します。私は通常、これらを自分のプロジェクト用にのみ保存しました。

代替テキスト http://www.cloudsocket.com/images/image-thumb17.png

Visual Studio でサーバー エクスプローラーを開き、目的のデータベースへの新しい接続を作成します。例として Northwind を使用しています。この例の接続の作成については説明しません。

代替テキスト http://www.cloudsocket.com/images/image-thumb18.png

データベース プロジェクトを更新する方法の例として、ストアド プロシージャを使用します。まず、Northwind データベースのサーバー エクスプローラーで "ストアド プロシージャ" ディレクトリを展開します。ストアド プロシージャを選択します。

代替テキスト http://www.cloudsocket.com/images/image-thumb19.png

ストアド プロシージャをソリューション エクスプローラーの [ストアド プロシージャ] ディレクトリにドラッグ アンド ドロップします。

代替テキスト http://www.cloudsocket.com/images/image-thumb20.png

代替テキスト http://www.cloudsocket.com/images/image-thumb21.png

ドラッグしたストアド プロシージャのファイルを開くと、次のように IDE によってスクリプトが作成されていることがわかります。

/****** Object:  StoredProcedure [dbo].[CustOrdersOrders]    Script Date: 08/25/2007 15:22:59 ******/
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[CustOrdersOrders]') AND type in (N'P', N'PC'))
DROP PROCEDURE [dbo].[CustOrdersOrders]
GO
/****** Object:  StoredProcedure [dbo].[CustOrdersOrders]    Script Date: 08/25/2007 15:22:59 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[CustOrdersOrders]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'
CREATE PROCEDURE CustOrdersOrders @CustomerID nchar(5)
AS
SELECT OrderID,
    OrderDate,
    RequiredDate,
    ShippedDate
FROM Orders
WHERE CustomerID = @CustomerID
ORDER BY OrderID
'
END
GO

データベースからすべてのテーブル、関数、および残りのストアド プロシージャをドラッグできるようになりました。ソリューション エクスプローラーで各スクリプトを右クリックして、データベース プロジェクトの参照データベースでスクリプトを実行することもできます。

于 2008-09-17T14:34:54.810 に答える
0

データおい?http://msdn.microsoft.com/en-us/vsts2008/db/default.aspx

于 2008-09-17T14:35:23.963 に答える
0

クリスさん、私もデータベース プロジェクトを維持するために同じ方法を使用していますが、唯一の問題は、ストアド プロシージャを頻繁に変更することです。最初にドラッグして追加した後、データベース プロジェクトをデータベースと同期する方法、またはプロジェクトにストアド プロシージャの最新のスクリプトをインポートする方法を知っていますか。

于 2009-07-01T02:08:10.713 に答える