如何得到本机sql server 的安装路径?还有一个连接字符串问题。

liutaoxwl 2003-12-30 05:34:02
1 如何得到本机sql server 的安装路径
2 如果我把数据库文件,.mdf和.ldf的文件拷到客户机,客户机安装了mdac2.7,但是没有sql server,我能操作这个数据文件么?怎么写连接字串?
...全文
81 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
nik_Amis 2003-12-31
  • 打赏
  • 举报
回复
up
zjcxc 元老 2003-12-30
  • 打赏
  • 举报
回复
最小化安装SQL .转自大力


1、需要的文件
sqlrun.cab
setup.ell
sqlrun01.msi
instmsi.exe
setup.exe
sqlresld.dll
(win200 可能需要semnt.dll)

2、新建一配置文件
例;a.ini
[Options]
TARGETDIR="C:\Program Files\Microsoft SQL Server\MSSQL\Binn\"
DATADIR="C:\Program Files\Microsoft SQL Server\MSSQl\Data\"
INSTANCENAME="实例名"
SAPASSWORD="密码"
SECURITYMODE=SQL
说明:
TARGETDIR 安装目录
DATADIR 数据库安装目录,在该目录下应该有master,msdb,tempdb,model数据库(8个文件),如果是新环境,可能需要将这几个文件打包到安装包,嗯,安装文件现的大一些,cool一些,嘿嘿(符合微软作风)
SAPASSWORD设置密码,但这个密码好像没用,安装之后再通过sqldmo改(加密?)
SECURITYMODE=SQL一定要,否则不能用查询分析器连接

3、命令
安装setup.exe /i sqlrun01.msi /settings a.ini /l log.log
卸载setup.exe /x sqlrun01.msi

4、备注

如果是win2000,要将semnt.dll提前装到TARGETDIR\mssql$‘实例’\binn下
文件都可以在sqlserver安装盘上找到,如果不清楚可以问我

一共可以安装16个实例,相应的用sqlrunXX。msi,
如果不想装客户端连接工具,请再加上两了dll:DBNMPNTW.DLL;ntwdblib.DLL



或使用MSDE:

msde可以很容易的和自己的程序发布。
msde在sql server的msde目录中
主要有两种方法,
简单方法是使用setup.exe,复杂方法是实用\msde\msm下的合并模块,可以将其无缝的集成到自己的msi安装程序里,不过很麻烦。

第一种方法主要是设置setup.ini和setup.exe的命令行参数。
例如:

1 [Options]
2 TARGETDIR="D:\Setup\msde\binn"
3 DATADIR="D:\Setup\msde\data"
4 INSTANCENAME="我的实例名称"
5 SECURITYMODE="SQL"
6 USEDEFAULTSAPWD

注意:
4 安装命名实例可以避免和用户计算机上可能存在的sql server发生冲突
5 验证模式为混合模式
6 sa密码为空

使用:F:\MSDE\SETUP /i F:\MSDE\setup\sqlrunXX.msi
就可以删除其他15个 sqlrunXX.msi了

zjcxc 元老 2003-12-30
  • 打赏
  • 举报
回复
2.不行,SQL的数据库不能独立使用,必须依附于SQL服务而存在.

你可以考虑安装MSDE
zjcxc 元老 2003-12-30
  • 打赏
  • 举报
回复
--得到SQL中的各种目录
declare @path varchar(8000)

--得到当前数据库的数据文件路径
select @path=rtrim(reverse(filename)) from sysfiles
select @path=reverse(substring(@path,charindex('\',@path),8000))
select 数据文件目录=@path

--得到SQL安装时设置的数据文件路径
select @path=rtrim(reverse(filename)) from master..sysfiles where name='master'
select @path=reverse(substring(@path,charindex('\',@path),8000))
select SQL数据文件目录=@path

--根据安装路径得到默认的备份目录:
select @path=rtrim(reverse(filename)) from master..sysfiles where name='master'
select @path=substring(@path,charindex('\',@path)+1,8000),
@path=reverse(substring(@path,charindex('\',@path),8000))+'BACKUP\'
select SQL默认备份目录=@path
txlicenhe 2003-12-30
  • 打赏
  • 举报
回复
1:
declare @path varchar(200)
exec master.dbo.xp_regread
'HKEY_LOCAL_MACHINE',
'SOFTWARE\Microsoft\MSSQLSERVER\setup',
'SQLPath',@path output
set @path = @path + '\data\'
print @path
2:不行
Rotaxe 2003-12-30
  • 打赏
  • 举报
回复
1:master..xp_instance_regread N'HKEY_LOCAL_MACHINE', N'SOFTWARE\Microsoft\MSSQLServer\Setup', N'SQLPath'
2:没办法
newdongkui 2003-12-30
  • 打赏
  • 举报
回复
1.可以读注册表,好像是
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Setup
2.不行

34,594

社区成员

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

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