最近项目需要,得操作处理Oracle数据库,用惯了SQL 2005,忽然一变,还真是遇到不少棘手的问题,折腾好久,哎,列出印象较深的几个,姑且当做今后参考吧!

1.       PL-SQL  to_date()函数的使用

string dateformat= dd/MM/yyyy HH:mm:ss;

"select * from DAT_MOV t where t.st_time>=to_date('" +stime.ToString(dateformat) + "','dd-mm-yyyy hh24:mi:ss')"

上面的SQL语句需要注意的有:

stime.ToString(string format) 格式是en-us,所以必须是dd/MM/yyyy,大小写严格区分;另外此处分钟为mm,与下面的有所区别。

http://hi.baidu.com/jokulpine/blog/item/59640d35e20c901690ef39bb.html

to_date( ,dd-mm-yyyy hh24:mi:ss) 其中,分钟mi不能写成mm,否则会报错;原因是SQL中不区分大小写,oracleSQL采用了mi代替了分钟

 

2ORA-12154: TNS: 无法解析指定的连接标识符

出现这个错误,是我在使用OracleClient.OracleConnection构建数据库连接的时候。

这时,最大可能的原因有两点:

A. 执行目录是否太长或者有括号等特殊符号。

B.  重新设置下环境变量,有可能系统找不到Oracle的执行文件路径

C. 网上搜了下,发现还有其他很多原因;我主要就是上述两处错误

 

3Oracle慎用带order by的分页

rownum 是不支持order by 排序的。因为rownum是在排序之前取值的。

这里还有关于rownum的详细解释

http://hi.baidu.com/danghj/blog/item/38fa9510109e2108213f2ec7.html

posted on 2009-07-08 23:28  Pavel Yu  阅读(425)  评论(0编辑  收藏  举报