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

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

第三步:用我们的 .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的原因。

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

猜你喜欢

  • 记Qzone项目组视觉设计标注的前前后后

    2010-03-24 18:03:00
  • 实现一个获取元素样式的函数getStyle

    2009-02-10 10:37:00
  • 利用ASP在线维护数据库

    2007-10-12 13:53:00
  • asp如何删除数据库中的表或索引?

    2010-06-26 12:23:00
  • sqlserver中求字符串中汉字的个数的sql语句

    2012-06-06 19:53:37
  • asp如何处理页面执行时发生的错误?

    2009-11-14 20:43:00
  • asp采集常用的几个FUCTION

    2007-09-05 19:45:00
  • 一个asp版的xheditor上传图片服务器端文件

    2009-12-21 14:18:00
  • Sql Server 2005读取外部数据的方法

    2008-07-08 19:08:00
  • asp用正则解析远程图片地址,用XMLHTTP将其保存

    2007-10-26 12:34:00
  • oracle 分页 很棒的sql语句

    2009-07-02 11:44:00
  • 优化MySQL数据库查询的三种方法

    2009-03-09 15:19:00
  • AJAX中文乱码解决

    2009-07-03 13:43:00
  • 设计良好网页的4项原则

    2009-04-24 12:48:00
  • 轻松解决:mysql数据库连接过多的错误

    2010-09-30 14:28:00
  • sqlserver 巧妙的自关联运用

    2012-07-21 14:55:12
  • 通过屏蔽IP来防止采集

    2007-08-19 15:28:00
  • 用javascript实现页面无刷新更新数据

    2011-08-14 07:54:08
  • 解决SQL Server的“此数据库没有有效所有者”问题

    2011-12-14 18:29:35
  • ORACLE应用经验(2)

    2010-07-31 13:31:00
  • asp之家 网络编程 m.aspxhome.com