我现在做好了个小软件,在本机上调试时,链接到数据库用
SqlConnection conn1.ConnectionString="data source=localhost;initial catalog=TimeRecord;integrated security=SSPI;" 
时,提示说SQL SEVER不存在或拒绝访问,而
SqlConnection conn1.ConnectionString="workstation id=1F6XXXXXXXXXXX;packet size=4096;integrated security=SSPI;data source=1f6xxxxxxxxxxx;persist security info=False;initial catalog=TimeRecord";
时,就可以成功运行啦,哈.我现在想问的是:
我的SQL是和VS.NET装在不同的盘的,所以软件用到的数据表TimeRecord.mdf和TimeRecord_log.LDF在F:\sql\MSSQL\Data  也就是SQL的默认路径;
而我的软件项目(名为ProTimeRecord的一个文件夹)是在:H:\vs\myvs\xiangmu我要生成并发布这个软件,SqlConnection conn1.ConnectionString该要哪个语句啊?
用户的机子是不是也要装SQL后,才能安装这个软件来使用啊?我看过一些例子,好像是要在那个项目文件夹里建一个存放数据表的文件夹,
比如,现在我在H:\vs\myvs\xiangmu\ProTimeRecord  
里建立一个子文件夹:mydata   然后把数据表TimeRecord.mdf和TimeRecord_log.LDF
放进去,不知这样行不行?如果可以,那我的SqlConnection conn1.ConnectionString 又该怎么写啊?请好心的人给我个完整点的代码,好吗.

解决方案 »

  1.   

    首先
    你的程序数据库是基于sqlserver的 那么在用户方安装时当然要有sqlserver了 或者用户所在的网络中至少有一台sqlserver服务器 一般 我们都不是把sql连接串写在程序中,而是把它写在例如配置文件中,当程序启动时从配置文件中读取连接串。对于数据库的文件问题 有很多的方法和策略 其实当部署程序时,部署数据库只需要在用户的数据库服务器中建立相应数据库即可,那么我们不必提前导出数据库,通过恢复数据库的方法,而是可以导出数据库脚本,通过执行脚本的方法来创建数据库。