您的位置:首页 > 数据库

同一程序加载sql2000和2005驱动

2011-03-19 23:40 225 查看
程序在linux上运行时遇到一个问题,整得我是特别郁闷,不过还是解决了。

在一个程序内加载sql2000驱动,然后又加载sql2005驱动,运行时会报一个错:

[Microsoft驱动] [SQLServer 2000 程序对于 JDBC][SQLServer] 传入的表格式数据数据流 (TDS) 远程过程调用 (RPC) 协议流不正确。 参数 1 (""): 数据类型 0x38 是未知的。

导致这个错误的原因就是sql2000的驱动,当连接2005时是用的是sql2000的驱动不是2005的,所以就报错。

解决方法:

把sql2000的驱动删了,然后所有的连接数据源和使用的连接URL都按照sql2005的格式写。

windows下面同时加载sql2000和2005驱动基本不会出现上述问题,会自动加载各自的驱动。但加载时一定要先让程序加载2005的驱动,然后再加载2000的,如果先加载2000可能会报错。也可以像linux一样,只使用2005的驱动,写法也要按照2005的格式写了。

在查资料时,看到一篇文章,已经不分2000和2005的驱动了,统一使用2005的驱动,2000、2005、2008都使用同样的驱动。如果你非要使用2000以前的驱动连接2000不可,也没关系,但在使用时一定要注意在这两种操作系统中的所产生问题,以避免不必要的麻烦。(建议像linux那样使用)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: