如何发布SQL Server7的数据库文件?(100分)

  • 主题发起人 主题发起人 Lucker
  • 开始时间 开始时间
L

Lucker

Unregistered / Unconfirmed
GUEST, unregistred user!
在数据库(用的是SQL Server7)程序设计完成以后,应该如何把程序的数据库文件
分发给客户,以及怎样设置它们(用DBE或ADO均可)。
 
你可以用Export Data的方式生成各种输出文件(dbase, paradox...),然后再“传输”,
到目标机器上再Import Data进来,存储过程可以生成一些*.sql文件,然后到目标机器
上在Query Analyst中执行一下就可以了。
 
如果你是正在制作SQL SERVER 数据库服务器端的安装程序,可如下进行。
(1)USE MASTER 表
(2)删除现有同名数据库。
(3)建立数据库。(此时只是一个空数据库)
(4)注册BDB。
(5)如果是通过ODBC连接则要先安装ODBC程序,然后在程序中建立一个ODBC数据源。
(6)建立SQL SERVER 登录帐号。(sp_dellogin,sp_addlogin)
(7)建立数据库角色。 (sp_deluser,sp_adduser)
(8)拷贝数据库文件、日志文件到你建立的数据库指定的文件夹中,覆盖原由的同名文件。
(9)用系统进程SP_batch(我记不大清楚了)将数据库文件绑定到服务器中。

以上所有步骤都是在程序中实现的。
如果你感兴趣,可以发E-MAIL到我的邮箱21Ocean@21CN.COM 中。我们可以更详细地讨论。
 
我的方法可能不是很好, 但我自己一直這樣用的
1. 再開發的時候, 把每個table 的定義語句寫成sql 文件.(当然, 可以用tables.sql 表示所有文件, 但是最好分成各個子系統建立不同的sql文件, 特別team 開發.)
2. 把自己的database backup 出來
3. 在user 的pc 上restore database. 在執行上面的sql 文件. 實際table 被清空.(這裡可以有選擇性的執行)
...(其實這個時候, backup database 作為install 的標準可能更好)
4.這樣保留了所有的sp, 而table 又清空.
.....
前提, 不是批量的product, 要engineer 的參與程度比較高.
另外. 有些user 的sql server 還是不讓你接近的, 這樣可能要用更多的sql 语句.







 
用导入/导出的方法不一定行得通,因为SQL Server支持的一些特性在别的数据库中不
一定支持,所以转换时容易出错。对于fireocean和waterluo的两种方法则太复杂。能
不能把你们或你们公司实际使用的方法拿出来分享一下,欢迎大家都来讨论。
 
我也想知道!
 
(1)如果是服务器端对服务器端,用备份和恢复就行
(2)如果是本地端到本地端也可用备份和恢复
(3)如果是服务器到本地端用BCP
 
To 郝晶:
如果从我的服务器上把数据库备份下来,再在客户的服务器上恢复,能行吗?
 
完全可以
注意:在restore database 时,把options中的force restore over existing database选中
还要看一下options中的数据库路径, 不一致应加以修改。
 
接受答案了,谢谢各位!
 
用sp_detach_db再用sp_attach_db安装最完全.
 
后退
顶部