网络编程
位置:首页>> 网络编程>> ASP.NET>> Recipe: 把SQL数据库部署到远程主机环境(第一部分)(4)

Recipe: 把SQL数据库部署到远程主机环境(第一部分)(4)

作者:Scott Guthrie 来源:Scott Guthrie博客中文版 发布时间:2007-09-23 13:07:00 

标签:sql,上传,远程,数据库

第三步:用我们的 .SQL 文件创建我们的远程数据库

至此,我们生成了 .SQL 文件,我们就可以用它们来在我们的主机环境中安装数据库了。我们怎么使用 .SQL 文件安装数据库的细节取决于主机供应商是如何让我们访问我们的SQL账号的。有些主机供应商提供了一个基于HTML的文件上传工具,允许你提供一个 .SQL 文件,然后他们可以在你拥有的SQL数据库里执行这个文件。

其他的主机供应商提供一个在线的查询工具(如下图所示),允许你拷贝/粘贴SQL语句来在你的数据库里运行。如果你的主机供应商提供了类似的在线查询工具的话,那么你可以用一个文本编辑器打开.SQL文件,然后把其中的内容拷贝/粘贴到查询文本框里,然后运行这些语句。

不同主机供应商提供的SQL工具的质量不尽相同。在测试数据库发布向导时,我们发现主机供应商提供的一些定制的SQL管理工具会不正确地分析合法的SQL语句从而导致问题,特别是对于GOTO语句。这个页面描述了一个你也许见过的一些主机供应商的工具遭遇GOTO语句的问题。为了帮助全面提高SQL主机管理工具的质量,SQL Server产品组在明年的早些时候会发布一个免费的SQL HTML管理工具的源码,主机供应商可以将其集成到他们的界面中去。如果顺利的话,这将有助于改进所有Windows主机环境的标准体验。

如果你的主机供应商没有可用的HTML web管理工具让你轻松管理你的SQL数据库的话,那么你也可以编写一个简单的ASP.NET 网页,你可以将它和你的 .SQL 文件一起FTP到你的网站,然后访问该网页,该网页则把 .SQL 文件当作文本文件读入内存,然后将其变成一个字符串传给ADO.NET来执行。这将给予你和上面的查询分析器一样的结果,为你完全重建你的数据库。

Step 4: 第四步:更新web.config中的连接字符串

一旦在我们的主机环境的数据库里上传数据完毕,我们要向远程网站上传我们的.aspx文件,程序集和其他内容(一般是通过FTP来做的)。

我们要做的最后一步是打开我们的 web.config 文件,更新 <connectionStrings> 部分来指向我们远程主机的新数据库位置。注意,你需要从主机供应商那里得到确切的SQL服务器,数据库名字,以及用户名/密码。

用我们上面的personal starter kit作为例子,我们要改动 web.config 文件中的 <connectionStrings> 部分中的默认连接字符串(原本使用的是本地\app_data文件夹中的2个SQL Express数据库):


<connectionStrings>
   <add name="Personal" connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|Personal.mdf" />   
   <remove name="LocalSqlServer"/>
   <add name="LocalSqlServer" connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|aspnetdb.mdf" />
</connectionStrings> 



来使用单个SQL Server 2000数据库(Server123机器上的scottguDB数据库)。


<connectionStrings>
   <add name="Personal" connectionString="Data Source=Server123;Initial Catalog=scottguDB;Integrated Security=True" providerName="System.Data.SqlClient" />
   <remove name="LocalSqlServer"/>
   <add name="LocalSqlServer" connectionString="Data Source=Server123;Initial Catalog=scottguDB;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings> 

我们能够使用单个数据库(而不是上面的2个数据库),因为我们对单一数据库运行了2个 .SQL文件,这样,把所有的数据定义和数据库合并到单个数据库实例里去了。


第五步:完成

至此,我们就可以在主机环境里远程运行我们的应用了,它应该是工作的。

总结

作为SQL Hosting Toolkit的一部分推出的数据库发布向导应该使得为任何数据库(SQL Express 或者 SQL Server)创建 .SQL 文件非常容易。你可以使用它来轻松地dump你本机的数据库,然后用来在远程系统上重新建立完全一样的数据库。

在将来的教程里,我将示范你如何不用 .SQL 文件就可以重建远程数据库(而是在VS里通过web service把数据库直接发布到你的主机环境中去),请静候相关细节。

希望本文对你有所帮助,

Scott

附注:我们正计划把数据库发布向导加到 Visual Studio "Orcas"(下一个VS版本)中去,这意味着在那个时段里,你就不用单独下载数据库发布向导了。但我们要确定你不必等到那个时候,这是我们今天就将它提供给Visual Studio 2005和Visual Web Developer Express 2005的原因。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com