如何用installshield制作发行sql server的数据库??? 把要做的事情都写成SQL脚本,然后在安装程序里面用isql.exe执行脚本,OK 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 也就是说在打包时要同时把isql.exe打进去 不用把isql.exe 打包。在已经安装MS SQLServer 的机器上,isql.exe执行路径已经在系统的环境变量里。片段代码如下: szCmdDB = "\"CREATE DATABASE [MyDatabase] ON (NAME = N'MyDatabase_Data', FILENAME = N'" + INSTALLDIR^"Data\\MyDatabase_Data.MDF' , SIZE = 1, FILEGROWTH = 1) LOG ON (NAME = N'MyDatabase_Log',FILENAME = N'" + INSTALLDIR^"Data\\MyDatabase_Log.LDF' , SIZE = 1, FILEGROWTH = 1)\"" ; szCmdLine = "/U " + svSQLusr + " /P " + svSQLpwd + " /S " + svSQLsvr+" /Q " + szCmdDB ; if (LaunchAppAndWait("isql.exe", szCmdLine,WAIT) < 0) then MessageBox ("数据库创建失败!",SEVERE); endif; 另外我也有一个问题请教:系统安装完后,如何给目录设置权限?例如:系统被安装在NTFS格式分区上,新建立的文件夹的权限没有完全开放,而该系统必须对其中某个文件夹的文件进行读写操作。。如何解决???请教! 注意 szCmdDB = .... 跟 szCmdLine = .....是独立的两行 其他的倒入数据操作可以使用批处理来完成。szCmdBat = svSQLsvr + " " + svSQLusr + " " + svSQLpwd;if(LaunchAppAndWait(SUPPORTDIR^"Install.bat",szCmdBat,WAIT)) then MessageBox("无法初始化数据库!",SEVERE);endif;将 svSQLsvr(数据库IP、主机名) 、svSQLusr(数据库登录用户)、svSQLpwd(数据库登录密码) 做为 Install.bat 的三个参数。 以上方法只是把数据库安装上了~数据呢???~还有~我在用户的机器上怎样得到sqlserver的登录账号及口令~因为实际上用户的sqlserver可能已经被修改了sa的口令~ 如果有数据,最好是附加数据库,调用存储过程:sp_attach_db_file,大概是这样写的吧。 sp_attach...具体忘记是怎么拼写的,可以查一下联机文档的索引。但我觉得这种方法不可取,我遇见过N多的问题。高低版本、语言的问题我是写一个 Install.bat 的1、先用isql 执行一个初始化数据库结构的 InitialDb.sql,2、再用 bcp 倒数据文件快速稳定,没有语言和版本的障碍,呵呵(会出现msdos窗口)让程序在用户机自动获取数据库的用户名和密码是不太现实的,可以在安装的时候给提供用户输入界面,但我不知道怎么做比较科学。我现在是假设管理员输入的用户名和密码是正确的,呵呵,很不健壮还有一个笨办法,将用户输入的sqlServerName, sqlUserName, sqlPassword 使用 ADO.Connection 对象来验证,呵呵,可能要自己写一个组件,工作量很小。我想SQLMOD应该自己有验证的方法,我不知道如何做:) 为了避免有MSDOS窗口出现~我还是用c#写一个应用~应用中可以使用t-sql的restore方法将备份文件还原进指定的数据库服务器,这样的方法可靠多了~而且将服务器名称及口令让用户输入~这样就可以确定服务器的地点和进入信息,把这些信息保存到某个地方(例如注册表)~主安装是采用installshield调用此应用即可(launchappandwait)~我已经调试通过~很稳定~ 这方法不错,呵呵!!!LaunchAppandWait 是可以调用任何应用的哦 :)restore 有没有数据库版本、语言方面的障碍? restore的时候分不同版本的sql server即可,至于版本嘛~让用户选择吧~我不想那么操心~哈哈!!~ 数据mysql 求某一段时间内的用户注册数量,要求写出sql语句 sql server 2005关系图的级联更新和删除如何设置 求助存储过程语法简单问题,谢谢! SQL2008连接时使用计算机名称无法连接到服务器 这个问题应该很简单 请问那里有SQL SERVER 2000 下载啊!多谢了 给分 拨号远程无法访问SQL server2000的问题? 请问 zjcxc(邹建) 一个问题 SQL高手,请进! SQL SERVER查询语句性能请教 两个表查询,主键关联:查询在a表有,而在b表没有的所有记录。 大家帮忙改变字段范围!!!!!!!!!!!!!!!
szCmdLine = "/U " + svSQLusr + " /P " + svSQLpwd + " /S " + svSQLsvr+" /Q " + szCmdDB ; if (LaunchAppAndWait("isql.exe", szCmdLine,WAIT) < 0) then
MessageBox ("数据库创建失败!",SEVERE);
endif;
另外我也有一个问题请教:
系统安装完后,如何给目录设置权限?例如:系统被安装在NTFS格式分区上,新建立的文件夹的权限没有完全开放,而该系统必须对其中某个文件夹的文件进行读写操作。。如何解决???请教!
if(LaunchAppAndWait(SUPPORTDIR^"Install.bat",szCmdBat,WAIT)) then
MessageBox("无法初始化数据库!",SEVERE);
endif;
将 svSQLsvr(数据库IP、主机名) 、svSQLusr(数据库登录用户)、svSQLpwd(数据库登录密码) 做为 Install.bat 的三个参数。
数据呢???~
还有~
我在用户的机器上怎样得到sqlserver的登录账号及口令~
因为实际上用户的sqlserver可能已经被修改了sa的口令~
sp_attach_db_file,大概是这样写的吧。
但我觉得这种方法不可取,我遇见过N多的问题。高低版本、语言的问题我是写一个 Install.bat 的
1、先用isql 执行一个初始化数据库结构的 InitialDb.sql,
2、再用 bcp 倒数据文件快速稳定,没有语言和版本的障碍,呵呵(会出现msdos窗口)让程序在用户机自动获取数据库的用户名和密码是不太现实的,可以在安装的时候给提供用户输入界面,但我不知道怎么做比较科学。我现在是假设管理员输入的用户名和密码是正确的,呵呵,很不健壮还有一个笨办法,将用户输入的sqlServerName, sqlUserName, sqlPassword 使用 ADO.Connection 对象来验证,呵呵,可能要自己写一个组件,工作量很小。我想SQLMOD应该自己有验证的方法,我不知道如何做:)
我还是用c#写一个应用~
应用中可以使用t-sql的restore方法将备份文件还原进指定的数据库服务器,这样的方法可靠多了~
而且将服务器名称及口令让用户输入~这样就可以确定服务器的地点和进入信息,把这些信息保存到某个地方(例如注册表)~
主安装是采用installshield调用此应用即可(launchappandwait)~
我已经调试通过~
很稳定~
LaunchAppandWait 是可以调用任何应用的哦 :)restore 有没有数据库版本、语言方面的障碍?
让用户选择吧~
我不想那么操心~哈哈!!~