如何:根据概念模型生成数据库(实体数据模型工具)
本主题描述如何使用“生成数据库”向导(实体数据模型工具)根据 .edmx 文件中定义的概念模型生成数据库。 有关更多信息,请参见 .edmx 文件概述(实体框架)。
下面的过程假定您使用 Visual Studio 2010 打开一个项目。
根据概念模型生成数据库
向项目添加 .edmx 文件。
有关向项目添加 .edmx 文件的信息,请参见如何:创建新的 .edmx 文件(实体数据模型工具)和如何:添加现有 .edmx 文件(实体数据模型工具)。
生成概念模型。
可以使用 ADO.NET 实体数据模型设计器(实体设计器)创建实体和关系,或手动编辑 .edmx 文件生成概念模型。 有关更多信息,请参见实现高级实体框架功能和 CSDL, SSDL, and MSL Specifications。
注意: 在生成概念模型时,有关未映射的实体和关联的警告可能会显示在“错误列表”中。这些警告可以忽略,因为“生成数据库”向导将添加存储模型和映射信息(请参见步骤 3)。 右击实体设计器图面的空白区域,选择**“根据模型生成数据库”**。
单击**“新建连接”**按钮或从下拉列表中选择一个现有连接按钮以提供数据库连接。
必须提供数据库连接,才能基于模型中的属性类型确定目标数据库的列类型,才能将连接字符串信息添加到应用程序。 请注意,提供连接信息不启动数据定义语言 (DDL) 生成。
单击**“下一步”**。
“生成数据库”向导生成创建数据库时所需的数据定义语言。 生成的 DDL 显示在“摘要和设置”对话框(“生成数据库”向导)中。
单击**“完成”**。
完成后,“生成数据库”向导执行以下操作:
生成与提供的概念架构定义语言 (CSDL) 相对应的存储架构定义语言 (SSDL) 和映射规范语言 (MSL)。 .edmx 文件使用生成的 SSDL 和 MSL 进行更新。 请注意,向导会覆盖现有的 SSDL 和 MSL。
将生成的 DDL 保存在**“将 DDL 另存为”**文本框中指定的位置。 有关生成的 DDL 的更多信息,请参见数据库生成规则(“生成数据库”向导)。
注意: 如果在运行“生成数据库”向导时已定义一个存储模型,那么,在生成的 DDL 中,从该存储模型推导出的每个 EntitySet 有一个 DROP TABLE 语句,每个 AssociationSet 则有一个 DROP CONSTRAINT 语句。 向 App.config 或 Web.config 文件添加连接字符串信息。
需要特别注意的是,“生成数据库”向导不执行生成的 DDL。 若要创建与概念模型相对应的数据库架构,必须单独执行生成的 DDL(例如,在 SQL Server Management Studio(可能为英文网页)中执行 DDL)。