`
canofy
  • 浏览: 823240 次
  • 性别: Icon_minigender_1
  • 来自: 北京、四川
社区版块
存档分类
最新评论

切换数据库的小经历

    博客分类:
  • j2EE
阅读更多
切换数据库的历程

原因:开始说好用mysql的,后来部署工程的时候换了一个人,因此变成了sql server2005,因此得修改程序

问题:数据库变换之后,dao层使用了mysql相关的语句以及hibernate配置文件还是使用的mysql的配置。

解决办法:
1.使用了分页功能,因为涉及到统计表的查询,因此原dao里面写的是sql = sql + " LIMIT " + start + " , " + pageSize; 使用的是mysql特定的语句,用sql server2005之后需要修改这个语句,修改如下:
sql="SELECT * ,ROW_NUMBER() Over(order by id DESC) as rowNum FROM ( "+sql+" ) as myTable ";
sql="SELECT * FROM ( "+sql+" ) as t where rowNum between "+start+" and "+(start+pageSize);
2.再修改hibernate的配置文件,即:hibernate.cfg.xml,最初修改为如下所示:
<property name="dialect">
org.hibernate.dialect.SQLServerDialect
</property>
<property name="connection.url">jdbc:microsoft:sqlserver://192.168.0.251:1433;DatabaseName=stlog</property>
<property name="connection.username">ad</property>
<property name="connection.password">123</property>
<property name="connection.driver_class">
com.microsoft.jdbc.sqlserver.SQLServerDriver
</property>
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
3.修改hibernate配置文件之后运行程序,出现TUser.hbm.xml和数据库映射不了,提示stlog.t_user不存在,辗转分析之后才知道原来TUser.hbm.xml中<class name="domain.TUser" table="t_user" catalog="stlog">是这样,需要改为<class name="domain.TUser" table="t_user" schema="dbo" catalog="stlog">这样,增加了schema="dbo"。



4.修改为这样出Can't start a cloned connection while in manual transaction mode.错误,因此参照网上把url修改为jdbc:microsoft:sqlserver://192.168.0.251:1433;DatabaseName=stlog;SelectMethod=Cursor
参考:http://blog.csdn.net/ivan_zhang_blog/archive/2007/04/20/1572038.aspx

5.奇怪的是这一次出"[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知。"这个错误。最后没有办法,参考了一下其它的工程的链接方法,最后修改为:
<property name="myeclipse.connection.profile">com.microsoft.jdbc.sqlserver.SQLServerDriver</property>
<property name="connection.url">jdbc:jtds:sqlserver://localhost:1433;DatabaseName=stlog;SelectMethod=Cursor</property>
<property name="connection.username">mobile</property>
<property name="connection.password">Woncore!23</property>
<property name="connection.driver_class">
net.sourceforge.jtds.jdbc.Driver
</property>
使用了jtds-1.2.jar包。
分享到:
评论

相关推荐

    阐述大型数据库系统安全风险及策略.docx

    出现了丰富多样的数据模型,经历了从最简单的表格存储到海量数据库系统发展过程,出现了许多大型的数据库,适用性逐渐增强。经过长期研究,我们借助数据库管理系统的选择依据,比较、分析了四种常用数据库系统的功能...

    Oracle Active Data Guard 零停机数据库维护

    本专题讲座将介绍如何使用 Oracle Active Data Guard 的 Oracle ...这可以为 Oracle Active Data Guard 配置中的只读用户实现零停机维护(请注意,在备用数据库切换为主数据库时,读/写操作将经历短暂的服务中断)。

    ThinkPHP2.0完全开发手册

    封装了CURD和一些常用操作,在项目配置、类库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的表现。

    ThinkPHP v5.0.0 RC4.zip

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 使用ThinkPHP,你可以更方便和快捷的开发和部署应用。...

    Sybase ASE 15.7 开发文档:系统管理指南(卷二)

    限制经历时间 .......... 12 限制结果集的大小 .......... 13 设置 tempdb 空间使用限制 .......... 14 限制空闲时间 .......... 14 创建资源限制 .......... 14 资源限制示例 .......... 15 获得关于现有限制的信息...

    ThinkPHP v5.0.24 完整版

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 使用ThinkPHP,你可以更方便和快捷的开发和部署...

    ThinkPHP v5.0.24 核心版

    在项目配置、类 库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 使用ThinkPHP,你可以更方便和快捷的...

    ThinkPHP v3.2.3 核心版

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。使用ThinkPHP,你可以更方便和快捷的开发和部署应用。...

    ThinkPHP v5.1 RC2

    在项目配置、类 库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 使用ThinkPHP,你可以更方便和快捷的...

    ThinkPHP v5.0.24 完整版.zip

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 ThinkPHP主要特性包括 规范:遵循PSR-2、PSR-4规范,...

    ThinkPHP2.0完全开发手册.chm

    封装了CURD和一些常用操作,在项目配置、类库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的表现。 使用...

    管理信息系统 课件

    7.新、旧系统切换的常用方法 8.系统日常运行管理的内容 9.系统维护类型、系统评价的依据、内容 四:信息系统管理 项目管理、运行管理、评价。 1.信息系统的开发方式 2.信息系统开发项目进度的控制

    ThinkPHP v5.1 RC2.zip

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 使用ThinkPHP,你可以更方便和快捷的开发和部署应用。...

    ThinkPHP v3.0.1 开发板.zip

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。   使用ThinkPHP,你可以更方便和快捷的开发和部署...

    ThinkPHP v5.0.2 完整版

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 使用ThinkPHP,你可以更方便和快捷的开发和部署...

    ThinkPHP v3.2.3 完整版.rar

    库导入、模版引擎、查询语言、自动验证、视图模型、项目编译、缓存机制、SEO支持、分布式数据库、多数据库连接和切换、认证机制和扩展性方面均有独特的 表现。 使用ThinkPHP,你可以更方便和快捷的开发和部署...

    CALLME(个人计算机助理)

    在数据库,以后需要某一软件时,直接在里面查找,无需再一个 个网上邻居查找,省时省力,比较爽。 d、网页过滤器: 现在的网页都会包含有大量的flash和弹出广告窗口,本功能 主要是帮助用户把这些烦人的...

Global site tag (gtag.js) - Google Analytics