hi! | 关于
专注于Java技术、开源项目、项目管理
今天 | RSS | RDF | Atom | 其它
 
高级搜索

标签 - 分类 : 全部 | UNIX | 随笔 | 数据库 | Java技术 | 网摘文章
出现ORA-03115: unsupported network datatype or representation错误的原因,网上有几种说法:
  •         Oracle客户端的版本和服务器的版本不一致,通常是客户端版本太老
  •         在Oracle8使用了Timestamp类型,Oracle 8 中还不存在 Timestamp 这样的数据类型
 
而我要说的是另一个原因:
当table User的age字段类型为number,userCode字段类型为varchar2时,使用select * from User where  age = ‘23’或者select * from User where userCode=213478 这种SQL语句,可能报这样的错误。也许这个语句在某些客户端不会出错,而且原来不会错而经过了Oracle数据库分析之后却又出错了。
所以,写SQL还是要严谨些,乖乖的按照SQL标准编写;另外,值得提的是,如果在Java里用PrepareStatement绑定变量可以避免这个问题。
标签 :




置评

标题
正文
HTML : b, i, blockquote, br, p, pre, a href="", ul, ol, li
姓名
电邮地址
网站
记住我 是  否 

电邮地址将不会发表在公开网页上,您留下的电邮地址仅用于本文有新评论时通知您(以后可以随时拿掉).

回接到 http://www.searchfull.net:80/blog/addTrackBack.action?entry=1187316227842