我想在asp.net安装过程中找到一种创建和填充数据库的方法。
所以,我愿意做的是:
我使用的是.NET 3.5和Visual Studio 2005 ,数据库是SQL Server 2005.
提前致谢。
答案 0 :(得分:3)
如果您正在创建安装程序,我确信有一种方法可以在那里完成,但我并不是那么熟悉它。
否则,您可能会做以下事情。
这里的关键是确定“默认”连接字符串是什么。可能是第二个配置值。
答案 1 :(得分:2)
通常,您需要使用SQL脚本来执行此操作。无论如何,我倾向于这样做,因为从长远来看,它使数据库的维护和版本化变得更加容易。
核心思想是,在运行安装程序后,您将有一个自定义操作来执行此脚本。执行设置的用户需要具有以下权限:
但是,您的脚本将负责所有这些。您将拥有CREATE DATABASE
命令,相应的CREATE SCHEMA
,CREATE TABLE
,CREATE VIEW
等命令,然后在构建架构后,使用相应的{{1}填充数据的语句。
我通常将其分解为多个脚本,但是YMMV:
INSERT
,一个用于创建Enterprise Library日志表和过程)为了将来的维护,我创建了升级脚本,其中单个脚本通常处理整个升级过程。
编写脚本时,请务必在创建对象之前使用适当的安全检查(aspnet_regsql
等)。而且我倾向于使我的交易也是如此。
答案 2 :(得分:1)
好吧,实际上我在MSDN上找到了一个教程:Walkthrough: Using a Custom Action to Create a Database at Installation
我会用它并看看它是怎么回事,谢谢你的帮助,我会告诉你它是怎么回事。
答案 3 :(得分:1)
如果你可以使用Linq to Sql那么这很容易 只需将整个数据库导入Linq to Sql设计器即可。这将创建描述数据库中所有对象的对象,包括封装整个数据库设置的System.Data.Linq.DataContext派生类。
现在您可以调用DataContext.CreateDatabase()来创建数据库。