ORACLE 之 标识符无效 问题总结及解决方案

  今天自己在家里做毕业设计,遇到了ORACLE数据库的一些问题,所以来总结一下。自己在上班的时候也遇到客户过提过这样的问题,当时自己在百度上查了,给客户解决完。自己也没有在意,这次又出现这个问题,又是折腾了一会。真不值,遇到过的问题一定要多去总结和回顾

(一)  ONE 

  第一种情况可能是因为你的列名写错了,导致查询的时候,报的标识符无效。

  我觉得这种情况应该是比较少见的。

(二)  TWO 

  我不知道大家用过NAVICAT没,我很是喜欢用这个工具。他除了很棒的UI界面外。还有很强大的功能。比如说将mysql的数据一键迁移到oracle中去,当然反方向也是可以的。

  第二种出现的情况就是。Oracle会将小写自动转换为大写。比如你数据库中的字段是小写,你查询的SQL语句也是小写,但是ORACLE 将你的查询语句转为了大写(ORACLE严格区分大小写)这样去数据库中查找,它就找不到对应的字段。这样数据库就会报错。

  解决方案:

  将这段代码中的表名替换成自己要修改的表名,就可以把表中所有的小写字段名一下全部换为大写,很方便。

begin
  for c in (select COLUMN_NAME cn from all_tab_columns where table_name=‘表名‘) loop
    begin
    execute immediate ‘alter table 表名 rename column "‘||c.cn||‘" to ‘||c.cn;
    exception
    when others then
    dbms_output.put_line(‘表名‘||‘.‘||c.cn||‘已经存在‘);
    end;
  end loop;
end;

附 ORACLE 对照表一张

综上所述,我们在使用ORACLE数据库的时候,无论是表的名字,还是表中的字段的名字,都要大写免去不必要的麻烦!!



          

            2019希望自己事事顺利,努力工作,幸福生活。

原文地址:https://www.cnblogs.com/misscai/p/10350840.html

时间: 2024-10-31 04:05:42

ORACLE 之 标识符无效 问题总结及解决方案的相关文章

Oracle建表标识符无效ORA-00904: invalid identifier

CREATE TABLE SALARY( EMPID number not null, EMPNAME Varchar2(20), EMPSALARY number, HIREDATE DATE, PRIMARY KEY(EMPID), ); INSERT INTO SALARY VALUES(1,'蒋xx',1015.32,to_DATE('19950702','YYYYMMDD')); COMMIT; SELECT * FROM SALARY; 以上怎么运行都提示标识符无效,检查半天才发现C

ORA-00904: "IS_DEFAULT": 标识符无效

一 问题描述 用户反馈无法前台查询数据,报错500,后台查看日志如下,使用的是ibatis+oracle连接方式: 09:05:56 INFO - atomikos connection proxy for [email protected]: close()... 09:05:56 ERROR - 获取店内自己分类的列表数据发生异常~ --- The error occurred while applying a parameter map. --- Check the SHOP.queryL

Hibernate 自动更新表出错 建表或添加列,提示标识符无效

如Oracle 数据库下报错: create table db_meta_web.user (id varchar2(255 char) not null, account varchar2(255 char), department varchar2(255 char), email varchar2(255 char), mobile varchar2(255 char), name varchar2(255 char), password varchar2(255 char), prima

errorLNK1123:转换到COFF期间失败:文件无效或损坏的解决方案

好长时间不适用 visual studio 2010 今天打开一个项目,编译的时候: 出现:"errorLNK1123:转换到COFF期间失败:文件无效或损坏的解决方案" 解决方法: errorLNK1123:转换到COFF期间失败:文件无效或损坏的解决方案

服务器重启后Oracle监听服务没有自动启动的解决方案

最近一直在被这样一个问题烦恼,就是服务器断电重启后,Oracle监听服务没有正常自动启动(监听服务已经设置为自启动). 具体是这样的,监听服务设置为开机自启动,Oracle数据库服务设置为开机延时启动,按道理这个应该符合“先启动监听,后启动数据库服务”这个条件,但是每次断电重启后都是数据库服务正常启动了,监听服务没能启动. 查阅了一下,有这么两个说法,感觉还是挺有道理: 1.一般设置了开机自启动的服务要手动,基本是注册表不一致造成: 2.登录账号跟你安装Oracle的账号不一样,没权限启动. 针

ORA-00904:"T1"."AREA_ID" :标识符无效

1.错误描写叙述 ORA-00904:"T1"."AREA_ID" :标识符无效 00904 . 00000 - "%s:invalid identifier" *Cause *Action 行45列8出错 2.错误原因 在拼接SQL语句时.未查询"AREA_ID",而且group by中没有"AREA_ID" 3.解决的方法 在拼接SQL语句时.select中加上AREA_ID,group by AREA

ORA-00904:标识符无效

1.错误描述 ORA-00904:"TTT"."RN":标识符无效 00904 . 00000 - "%s:invalid identifier" *Cause: *Action: 行58列4出错 2.错误原因 分页组件中,添加了分页的SQL语句,但是在拼接SQL语句时,未将分页拼接进去,导致出错 3.解决办法 将"TTT"和"RN"分页的SQL语句拼接起来

Oracle中如何插入特殊字符: & 和 ' (多种解决方案)

分类: Oracle Oracle中如何插入特殊字符:& 和 ' (多种解决方案) 今天在导入一批数据到Oracle时,碰到了一个问题:Toad提示要给一个自定义变量AMP赋值,一开始我很纳闷,数据是一系列的Insert语句,怎么会有自定义变量呢?后来搜索了一下关键字AMP发现,原来是因为在插入数据中有一个字段的内容如下: http://mobile.three.com.hk/3DX?uid=0676&sid=rt_060908 Oracle把这里的URL的参数连接符&当成是一个自

Oracle包被锁定的原因分析及解决方案

http://blog.csdn.net/jojo52013145/article/details/7470812 在数据库的开发过程中,经常碰到包.存储过程.函数无法编译或编译时会导致PL/SQL 无法响应的问题.碰到这种问题,基本上都要重启数据库解决,严重浪费开发时间.本文将就产生这种现象的原因和解决方案做基本的介绍. 问题分析 从事数据库开发的都知道锁的概念,如:执行 Update Table xxx Where xxx 的时候就会产生锁.这种常见的锁在Oracle里面被称为DML锁.在O