Frage

Ich möchte einen Weg finden, Datenbank-Projekte schnell in Visual Studio zu entwickeln. Irgendwelche Ideen?

War es hilfreich?

Lösung

Ich habe eine Methode zur Erstellung und Datenbank-Projekte in Visual Studio 2005, das ich dachte, war allgemein bekannt zu aktualisieren. einige Mitarbeiter nach zu fragen, ob sie wussten, wie sie ihre Datenbank-Projekte mit dieser Methode zu aktualisieren und keine der Empfang, dachte ich, ich würde darüber bloggen und entlang ein paar hilfreiche Tipps und Best Practices übergeben.

Ich arbeite viel mit Datenbanken und insbesondere gespeicherte Prozeduren, die mit Business-Logik / Datenzugriff .NET Framework verwendet werden gebaut werden. Ich genieße die Arbeit mit Datenbanken und immer Datenbank-Projekte erstellen mit meinen .NET-Projekten zu leben. Ich bin psychotisch über Datenbank-Projekte auf dem neuesten Stand zu halten. Ich habe zu vieler Zeit in meinen jungen Jahren verbrannt, wo ich eine gespeicherte Prozedur erstellen benötigt, die gelöscht wurde oder war nicht synchron mit der Anwendung mit der Datenbank.

Nach dem Datenbank-Projekt in Visual Studio 2005 erstellen, wie gezeigt:

alt text http://www.cloudsocket.com/images/image-thumb16 .png

Erstellen Sie 3 neue Verzeichnisse in den Projekten: Tabellen, Stored Procedures und Funktionen. Ich in der Regel nur dann gespeichert, diese für meine Projekte.

alt text http://www.cloudsocket.com/images/image-thumb17 .png

Ich öffne jetzt die Explorer-Server in Visual Studio und eine neue Verbindung zu meiner gewünschten Datenbank erstellen. Ich bin mit Nordwind wie mein Beispiel. Ich werde nicht für dieses Beispiel durch die Schaffung der Verbindung gehen.

alt text http://www.cloudsocket.com/images/image-thumb18 .png

Ich werde eine gespeicherte Prozedur wie mein Beispiel auf verwenden, wie das Datenbankprojekt zu aktualisieren. Zuerst habe ich die „Stored Procedures“ Verzeichnis in dem Server-Explorer für die Northwind-Datenbank erweitern. Ich wähle eine gespeicherte Prozedur.

alt text http://www.cloudsocket.com/images/image-thumb19 .png

Ich ziehe die gespeicherte Prozedur der "Stored Procedures" Verzeichnis im Solution Explorer und legen Sie es.

alt text http://www.cloudsocket.com/images/image-thumb20 .png

alt text http://www.cloudsocket.com/images/image-thumb21 .png

Wenn Sie die Datei für die geschleppt gespeicherten Prozeduren geöffnet werden Sie feststellen, dass das IDE das Skript erstellt wie folgt:

/****** 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

Sie können nun ziehen über alle Tabellen, Funktionen und die verbleibenden Prozeduren aus Ihrer Datenbank gespeichert. Sie können sich auch im Solution Explorer auf jedem Skript klicken und die Skripte auf Ihrer Datenbank-Projekt referenzierten Datenbank ausgeführt werden.

Andere Tipps

Hey Chris, ich benutze auch die gleiche Art und Weise ein Datenbankprojekt für die Aufbewahrung, das einzige Problem ist, dass Sie oft zu gespeicherten Prozeduren Änderungen vornehmen, und manchmal vergessen Sie, welche Sie geändert haben, so dass Sie vielleicht ein Ziehen und vergessen Sie die anderen . Haben Sie einen Weg kennen das Datenbank-Projekt mit der Datenbank oder eine Art und Weise zu importieren neueste Skript für gespeicherte Prozeduren in Ihrem Projekt zu synchronisieren, nachdem sie das erste Mal durch Ziehen.

hinzugefügt wurden
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top