Storm_Center

病毒安全知识,电脑网络技术,手工杀毒方法,答疑解决笔记

导航

ORA-01427错误与rownum

  ORA-01427:single-row subquery returns more than one row,单行子查询返回多行,所以Oracle还是能不用子查询就不用子查询,用表连接就不会有这个麻烦,虽然有主表会有重复,至少查询结果能出来,比起出现ORA-01427错误后连累程序执行不下去的好。如果出现这个01427错误,而且一定要用子查询,比如懒得再改,那么能找到重复的子查询记录进行修改当然好,找不到,Oracle可以用rownum解决。

Oracle怎么判断字符串为数字

  想设置oracel表的一个约束条件需要判断某列值的一部分是否是纯数字,截取字串好办,mid就行,反而是后面判断是否为数字,oracle里没有专门的判断是否是数字的函数,不象powerbuilder有个isnumber(),可以直接用,不过oracle有其他方法,可以用REGEXP_REPLACE函数,这个函数支持正则表达式,……

Oracle11g的ORA-28002错误

  TOAD连接Oracle数据库,出现提示ORA-28002: the password will expire within 6 days。想了一下,这个数据库大约是去年6、7月间安装的,差不多快到180天的期限了,从Oracle11g开始,默认在default概要文件中设置了PASSWORD_LIFE_TIME=180天,因此会在快过期时提示,如果真的过了期,就是ORA-28001: the password has expired。

ORA-00923错误

  用TOAD编辑修改Oracle视图时遇到错误ORA-00923: FROM keyword not found where expected,原意为未找到关键字,但在本例中并非如此,而是我用错了别名。

ORA-00838错误的处理方案

  测试安装Oracle11g时,调了下sga_target的值,然后shutdown immediate关闭数据库(直接shutdown,那得要很长时间),出现权限不足提示,所以要用以下命令进入命令行: sqlplus /nolog; connect /as sysdba; 或 sqlplus '/as sysdba" 这样才不会权限不足。但是在调整完sga_target并关闭数据库后startup重启,就出现了“ORA-00838: Specified value of MEMORY_TARGET is too small, needs to be at least xxxxM”的提示,数据库启动不了。想用alter再调MEMORY_TARGET已经来不及了,“ORACLE NOT available”。

Enterprise Manager配置失败

  安装Oracle11g,到最后出现警告:Enterprise Manager配置失败-监听程序未启动或数据库服务未注册到该监听程序。关掉此警告,数据库也能安装完成,但em(企业管理器)运行不起来,在C:\app\Administrator\product\11.2.0\dbhome_1\install\portlist.ini(以上是默认路径,我没改过oracle安装路径)中没有em端口号,整个portlist.ini文件是空的。除EM外,其他的倒一切正常。

一例ORA-12541: TNS: 无监听程序

  公司一台服务器上的Oracle数据库突然连接不上,测试显示“ORA-12541: TNS: 无监听程序”。虽然Oracle服务本身并没有显示停止,还是先重启了下Oracle服务,但无效。然后按网上说的重置监听程序:从Net Configuration Assistant进入监听程序配置,按默认重新配置一遍,再进本地网络服务名配置,也重新配置一遍,不过测试时仍然显示无监听程序。……

Oracle的日期时间计数

  由于某种需要,要在Oracle的视图里计算推迟两个小时的时间,找了半天,原来是类似select sysdate+2/24 from dual如果是分钟、秒数的推迟或提前,同样是折算成天数计算。顺便找一些其它的Oracle日期时间计算函数与方法,……

Oracle的substr函数

  前两天被网上随手查的信息坑了,查一下Oracle函数substr的用法,平时懒得去记,到用时才去查,查到的函数用法是:substr(字串,起始位[,截取长度])。这就是一个截取字符串的函数,长度可省略,省略即为从截取位开始直到字串结尾的所有字符,这个起始位可为负数,负数就是从字串结尾开始数。

Oracle获取表的所有列名

  想用insert into将一个表的数据导入另一个表,但两个表的列并不一样,后一个表比前者少几个,相同部分的名称是一样的,所以想直接获得目标表的所有列名,然后再从源表中导出这些列的数据insert。要获得一个表的所有列名,Oracle有几个SYS下的视图可以做到

分页:[«]1[2][3][4][»]
  • 微信订阅号
    微信订阅

文章归档-鼠标滑过查看

本站出现的所有广告均不代表本人及本站观点立场 | 关于我 | 网站地图 | 联系邮箱 | 返回顶部
Copyright 2008-2018 www.stormcn.cn. All Rights Reserved. Powered By Z-Blog. 闽ICP备09000343号

闽公网安备 35010202000133号