关于一个数据库应用系统安装时的数据库创建和初始化

how_warm 2000-07-21 04:33:00
我用VC开发了一个数据库应用系统,在为这个数据库应用系统初始化——在数据库服务器上创建一个新的数据库时出现了问题。因为我不想让用户在SQL Server7.0上使用Manage
工具来创建一个数据库,而是想通过程序或别的办法来自动创建数据库,如何解决?请各位经验人士相助!多谢!
...全文
220 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiuzhi 2000-07-25
  • 打赏
  • 举报
回复
关注
none 2000-07-24
  • 打赏
  • 举报
回复
我用POWER BUILDER做过类似的工作。
我的初始化程序做以下工作:建立数据库、建立书库对象、向部分表中添加数据。
创建数据库也有相应的语句,为什么不可以一同加在初始化程序里呢?
如果把所有的语句都写在初始化程序中,再配上进度条显示,显得你的程序很专业。
否则,用户用起来麻烦,你说起来(使用手册)也麻烦。
ReganCai 2000-07-24
  • 打赏
  • 举报
回复
对于Sql Server7.0,你可以这样:
1:将你的数据库的Data文件(有两个,一个是log,一个是Data),
比如说是A_Data.mdf(数据文件),A_log.LDF(log文件),
安装中,用InstallShield加入这两个文件,添加这样的一个Bat文件,
A.bat内容:
isql -U sa -P -d master -i Attach.sql -o Attach.log
(用户)(密码)(数据库)
另外,写一个Sql 文件:
Attach.sql:
EXEC sp_attach_db @dbname = N'A',
@filename1 = N'c:\A_Data.mdf', (假设安装后到C:\下)
@filename2 = N'c:\A_Log.ldf'
就可以了,安装时调用A.bat就可以了.
(注意SQL Server的字符集一样).
2:利用isql -U sa -P -d master -i CreateDatabase.sql -o CreateDatabase.log
在Master中CreateDatabase(例如A),至于CreateDatabase你可以查Sql Server的帮助.
再利用isql -U sa -P -d A -i Table.sql -o Table.log,
在Table.Sql中写CreateTable语句.
其实对于isql -U (UserName) -P (Password) -d (DataBase Name) -i
(Sql File ) -o (Log File )中的Sql File 中,可以写任何Sql Server
接受的Sql 语句的.你也可以在程序中调用的。
3。直接在程序中创建,用Connect To 连到Master,
在Master中Create Database,
再Connect To连到你创建的数据库,执行Create Table就可以了.
至于Connect To,Create Database,Create table等,你可以察看一下
Sql Server Help.
祝好运!
ReganCai 2000-07-22
  • 打赏
  • 举报
回复
不知你用的是哪个数据库?
其实完全可以做到。
举例:ORACLE:可以在安装时自动执行批处理,将准备好的DMP导入。
SQL SERVER可以执行sp_Attach_db将准备好的data 文件连入Sql server
中的。
其实,还有许多方法,不明白可以在提出来。


how_warm 2000-07-22
  • 打赏
  • 举报
回复
ReGongCai,谢谢你真诚的诲人不倦的帮助。我需要进一步地向你请教:
我用的数据库是SQL Server.我现在的工作是为已经开发好的VC数据库应用程序创建一个安装(使用InstallShield for microsoft VC6.0).遇到的问题是:当一个系统安装的时候,需要自动完成在是Server上创建该系统所使用的数据库(包括数据库本身和该库中的所有数据表)。要在一个数据库上创建数据表非常简单,我可以在系统中开发一个系统数表创建的初始化程序(这可以运用VC数据库编程来实现)。但是创建表的饿前提是先创建一个数据库。如何在安装中创建一个数据库,这就是我的问题。请提供解决方法!谢谢!

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧