在 Visual Studio 中集成数据库开发





5.00/5 (3投票s)
将数据库开发集成到 Visual Studio 中,
引言
上周,我开始准备关于企业应用程序架构:在 .NET 中设计应用程序和服务文章的第二部分。正如我在第一部分中所解释的,第二部分涉及数据库和库的设计以及演示应用程序。虽然我以传统方式解释了数据库的设计和管理,但这存在一些缺点。例如,用户想要手动设计演示数据库,或者需要恢复提供的备份才能运行演示应用程序。这确实是一项耗时的工作。为什么我需要浪费读者宝贵的时间,明明有简单的解决方案来解决这个头痛的问题。所以我决定向读者道歉,并将我的示例数据库与我的示例应用程序本身集成在一起。这是一次很好的体验,我决定与我的朋友们分享我的知识。
在 Visual Studio 中集成数据库是什么意思?
这意味着您可以从 Visual Studio 管理数据库,例如创建表、主键、外键以及几乎所有 SQL 功能。通过将数据库开发紧密集成到 Visual Studio 中,应用程序开发团队和负责构建数据库的数据库设计人员拥有一个通用平台,使他们能够轻松协作。这真的很棒,不是吗?
这在开发人员在一层中进行的更改影响到另一层时将非常有用,例如在数据库中添加列,他或她可以在不更改开发工具的情况下对中间层进行相应更改。然后,他可以部署一个项目或整个解决方案。然后,他可以执行由他/她的队友实现的单元测试,以验证其他层是否仍然按预期运行。
通过 Visual Studio 进行客户订单管理数据库设计
让我们开始说明如何通过 Visual Studio 设计和管理我的数据库。我将通过完整的快照一步一步地解释这一点。
要创建新的数据库项目,请打开 Visual Studio 2010,在“新建项目”对话框窗口的“已安装模板”(左窗格)中,选择“数据库”->“SQL Server”。
请注意,我选择了“**SQL Server 2005 数据库项目**”并将项目名称命名为“**Customer Database**”。现在 Visual Studio 创建了与 SQL Server 交互的所有架构。
要打开架构视图,请单击解决方案资源管理器工具箱中的“**架构视图**”按钮。现在您可以看到 Visual Studio 已创建了数据库管理所需的所有内容。
让我们开始将 Visual Studio 数据库架构与 SQL Server 连接。要设置连接字符串,请右键单击“**Customer Database**”项目并打开项目属性窗口。找到“目标连接”字段,然后单击该字段的“编辑”按钮以调出“**连接属性**”窗口。
在“连接属性”窗口中,设置您的服务器名称、数据库名称,然后单击“**确定**”按钮。就这样;我们配置了我们的项目与数据库。现在我们可以继续创建表和约束脚本了。
要创建表,请右键单击“**架构** --> **dbo** --> **表**”,然后从子菜单中选择“**添加**-->**表**”。
现在在“添加新项”对话框中选择“表”,然后为表命名为 `Customer`。
单击“确定”并查看脚本窗口。默认情况下,它将包含一个具有两个字段的表(脚本)。现在,根据您的要求修改脚本。这是我们示例的 `Customer` 表的脚本。
TABLE [dbo].[Customer]
(
CustomerID int NOT NULL,
FirstName varchar(20) NULL,
LastName varchar(20) Null,
Photo image null,
Address1 varchar(40) null,
Address2 varchar(40) null,
City varchar(20) null,
Country varchar(20) null,
Phone varchar(15) null,
Email varchar(30) null
)
同样,创建所有必需的表。这是我们将在演示示例中创建的其他表的脚本。
订单表
TABLE [dbo].[Order]
(
OrderID int NOT NULL,
CustomerID int Not NULL,
OrderDetailsID int Not NULL,
Quantity int Not NULL,
OrderDate datetime NULL,
RequiredDate datetime NULL,
ShippedDate datetime NULL
)
订单详细信息表
TABLE [dbo].[OrderDetail]
(
OrderDetailsID int NOT NULL,
OrderID int NULL,
ProductID int null,
Quantity int null,
UnitPrice decimal NULL,
Discounts int NULL,
Size varchar(15) NULL,
Color varchar(20) NULL,
RequiredDate datetime NULL,
OrderDate datetime NULL,
ShippedDate datetime NULL,
Total decimal NULL
)
产品表
TABLE [dbo].[Product]
(
ProductID int NOT NULL,
UntiPrice int NULL,
ProductName varchar(20) Not NULL,
ProductDescription varchar(200) NULL,
AvialableColors varchar(15) NULL,
Size varchar(10) NULL,
Color varchar(20) NULL,
Discount int NULL,
Picture image NULL,
Ranking varchar(20) NULL
)
我们如何为我们的表创建外键和主键脚本?这很简单。只需执行与表脚本创建相同的步骤。右键单击表并选择“**主键或外键项**”,然后为它编写脚本。**** 这是我们表的内外键脚本。
Customer 表的主键脚本
ALTER TABLE [dbo].[Customer]
ADD CONSTRAINT [CustomerIDPrimaryKey]
PRIMARY KEY (CustomerID)
Product 表的主键脚本
ALTER TABLE [dbo].[Product]
ADD CONSTRAINT [ProductIDPrimaryKey]
PRIMARY KEY (ProductID)
Order 表的主键脚本
ALTER TABLE [dbo].[Order]
ADD CONSTRAINT [OrderIDPrimaryKey]
PRIMARY KEY (OrderID)
OrderDetail 表的主键脚本
ALTER TABLE [dbo].[OrderDetail]
ADD CONSTRAINT [OrderDetailsIDPrimaryKey]
PRIMARY KEY (OrderDetailsID)
Order 表的外键脚本
ALTER TABLE [dbo].[Order]
ADD CONSTRAINT [FK_CustomerID]
FOREIGN KEY (CustomerID)
REFERENCES Customer (CustomerID)
OrderDetail 表的外键脚本
ALTER TABLE [dbo].[OrderDetail]
ADD CONSTRAINT [FK_OrderID]
FOREIGN KEY (OrderID)
REFERENCES [Order] (OrderID)
ALTER TABLE [dbo].[OrderDetail]
ADD CONSTRAINT [FK_ProductID]
FOREIGN KEY (ProductID)
REFERENCES Product (ProductID)
请看下图所示的项目,其中包含所有表和约束。
就是这样。现在部署项目。要部署数据库项目,请右键单击“**Customer Database**”项目并选择“部署”。Visual Studio 将在 SQL Server 2005 中执行所有创建表和约束的脚本。部署成功后,打开 SQL Server Management Studio Express 并确保数据库已正确创建并包含所有约束。这是我的 SQL Server 2005 的快照。
哇,真是强大的功能。VS IDE 的开发人员们真是太棒了。我真的很喜欢在 .NET 技术领域工作J。现在我们已经完成了在 Visual Studio 中集成数据库。这就是我在我的企业应用程序架构:在 .NET 中设计应用程序和服务。文章中所做的工作,并且还上传了一个带有数据库的示例。请注意,要在您自己的环境中运行演示示例,您需要在部署或运行应用程序之前更改服务器名称。我在图 3 中清楚地说明了如何更改服务器名称。此外,您只能从本文下载一个示例数据库应用程序。
虽然这篇文章的核心是一个非常简单的想法,但我对结果非常满意,并且认为它在您自己的项目中非常容易使用。如果您觉得这篇文章对您有帮助,我非常感激您的点赞和评论。
尽情享受吧!!!
历史
- 2010 年 9 月 28 日:初次发布