SQL Server Express 数据库自动部署问题及解决
2007-11-11 12:49:26 来源:WEB开发网 这几天做了一个程序,VS 2005 + sql server(WINDOWS平台上强大的数据库平台) Express,仔细查阅文档,发现 sql server(WINDOWS平台上强大的数据库平台) Express 支持 XCOPY 部署方式,也就是说,只要目标计算机有了 sql server(WINDOWS平台上强大的数据库平台) Express,那么只需要把数据库拷贝过去,可以在程序的同一个目录中,然后在连接字符串中配置 AttachDBFileName 参数即可。数据库会自动挂接到 sql server(WINDOWS平台上强大的数据库平台) Express 中,运行完后自动 Deattch。感觉不错,照猫画虎,结果出现了一个错误:“数据库已被压缩,无法建立,需要解压缩”。晕死,什么时候压缩了?莫非是 Shinrk 的问题?搞了 n 个小时,无解,睡觉。
次日再战,查阅资料无解,查阅 Internet 无解,想放弃,又舍不得。无意中发现,在管理界面中 Attach 数据库居然也是这个错误,而在原先目录中的数据库居然没问题。把数据库拷贝到程序目录(在 D: 盘,sql server(WINDOWS平台上强大的数据库平台) Express 安装在 C: 盘)就会出错。不会是这个问题吧?
将程序目录移动到 C 盘,居然一切正常,然后彻底晕死。难道自动挂接数据库必须在 C 盘???
另,如果将数据库文件设置为只读,则无论在哪个盘都可挂接,只是成为只读数据库。
虽说解决了问题,可是不懂原理,是 Bug,还是我的系统问题?
其实,Sybase 的 SQL Anywhere 真的不错,在启动数据库的时候才启动数据库管理系统,系统运行结束,数据库管理系统自动结束,如果 sql server(WINDOWS平台上强大的数据库平台) Express 也支持这个功能就好了,我可不喜欢不用数据库的时候还有一个 sql server(WINDOWS平台上强大的数据库平台) 服务在运行。Access 连存储过程都不支持,微软,想说爱你并不容易。
BLOG:ZhangJinglin
- ››SQL Server 2008 R2 下如何清理数据库日志文件
- ››sqlite 存取中文的解决方法
- ››SQL2005、2008、2000 清空删除日志
- ››SQL Server 2005和SQL Server 2000数据的相互导入...
- ››sql server 2008 在安装了活动目录以后无法启动服...
- ››sqlserver 每30分自动生成一次
- ››sqlite 数据库 对 BOOL型 数据的插入处理正确用法...
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
更多精彩
赞助商链接