zoukankan      html  css  js  c++  java
  • SQL Server Express 数据库自动部署问题及解决

            这几天做了一个程序,VS 2005 + SQL Server Express,仔细查阅文档,发现 SQL Server Express 支持 XCOPY 部署方式,也就是说,只要目标计算机有了 SQL Server Express,那么只需要把数据库拷贝过去,可以在程序的同一个目录中,然后在连接字符串中配置 AttachDBFileName 参数即可。数据库会自动挂接到 SQL Server Express 中,运行完后自动 Deattch。感觉不错,照猫画虎,结果出现了一个错误:“数据库已被压缩,无法建立,需要解压缩”。晕死,什么时候压缩了?莫非是 Shinrk 的问题?搞了 n 个小时,无解,睡觉。
            次日再战,查阅资料无解,查阅 Internet 无解,想放弃,又舍不得。无意中发现,在管理界面中 Attach 数据库居然也是这个错误,而在原先目录中的数据库居然没问题。把数据库拷贝到程序目录(在 D: 盘,SQL Server Express 安装在 C: 盘)就会出错。不会是这个问题吧?
            将程序目录移动到 C 盘,居然一切正常,然后彻底晕死。难道自动挂接数据库必须在 C 盘???
            另,如果将数据库文件设置为只读,则无论在哪个盘都可挂接,只是成为只读数据库。
            虽说解决了问题,可是不懂原理,是 Bug,还是我的系统问题?
            其实,Sybase 的 SQL Anywhere 真的不错,在启动数据库的时候才启动数据库管理系统,系统运行结束,数据库管理系统自动结束,如果 SQL Server Express 也支持这个功能就好了,我可不喜欢不用数据库的时候还有一个 SQL Server 服务在运行。Access 连存储过程都不支持,微软,想说爱你并不容易。

  • 相关阅读:
    ActiveMQ( 一) 同步,异步,阻塞 JMS 消息模型
    rocketmq (一)运行原理以及使用问题
    Springboot+ActiveMQ(ActiveMQ消息持久化,保证JMS的可靠性,消费者幂等性)
    ActiveMQ(下载,启动,java程序中 如何操作)
    ActiveMQ(为什么要使用消息中间件,JMS传输模型)
    java(线程池的创建方式,和线程池的原理)
    java多线程
    Zookeeper实现负载均衡
    Zookeeper实现分布式锁
    SpringCloud-断路器(Hystrix)
  • 原文地址:https://www.cnblogs.com/ZhangJinglin/p/321022.html
Copyright © 2011-2022 走看看