oracle中bug之ORA-00904:”COS
笔者今天遇到一个oracle中的bug,详情请看小生细细道来。 换列名后,标示符还是无效 ORA-00904:”COS_0”: 标示符无效 如题,也许导致这个问题的原因很多,但是本文笔者所要描述的是由于创建表对象时,创建的语句里列名带有双引号问题。“”就是这个符号的原
笔者今天遇到一个oracle中的bug,详情请看小生细细道来。
换列名后,标示符还是无效ORA-00904:”COS_0”:标示符无效
如题,也许导致这个问题的原因很多,但是本文笔者所要描述的是由于创建表对象时,创建的语句里列名带有双引号问题。“”就是这个符号的原因。如下所示:
create table D_METER_SITECHK (
READ_ID NUMBER(16) not null,
METER_ID NUMBER(16) not null,
TEST_DEPT_NO VARCHAR2(16),
"Ua" NUMBER(12,4),
"Ub" NUMBER(12,4),
"Uc" NUMBER(12,4),
"la" NUMBER(12,4),
constraint PK_D_METER_SITECHK primary key (READ_ID)
);
以上语句里的双引号是怎么来的,一是通过建模工具,自动生成的时候,建模工具会默认把一些字段当成关键字,会莫名其妙给这些看似关键字的列名加上双引号‘“’。但是再PL/SQL创建表的时候,PL/SQL却不报错,而且创建出来的表几乎看不出任何问题。
可是当你对这个表做插入数据时却始终插不进去,无论你换任何列名,都无济于事。但是你执行select操作却能正常把数据查出来。很奇怪吧。
不管你换任何列名,只要你不把以上带双引号的四个列删掉,就会一直出错,但是你会发现,无论你怎么删除或者更改上述四个带双引号的列的列名,始终改不了。系统总是提示:ORA-00904:”COS_0” :标示符无效
解决这个问题的唯一办法就是,删掉这个表,当然如果这个表里的列是别的表的主键,那么其他的表也要受到关联。
重新创建表对象,从建模工具里复制自动生成的sql创建语句到记事本里,然后把双引号去掉。
完事,此问题得到解决。
大概这是oracle的bug吧。
带双引号的列,能创建成功,但是无法对这个表对象做任何操作。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Oracle 中,FOR LOOP 循环可动态创建游标, 步骤为:1. 定义游标类型;2. 创建循环;3. 动态创建游标;4. 执行游标;5. 关闭游标。示例:可循环创建游标,显示前 10 名员工姓名和工资。

要停止 Oracle 数据库,请执行以下步骤:1. 连接到数据库;2. 优雅关机数据库(shutdown immediate);3. 完全关机数据库(shutdown abort)。

在CentOS系统上搭建Hadoop分布式文件系统(HDFS)需要多个步骤,本文提供一个简要的配置指南。一、前期准备安装JDK:在所有节点上安装JavaDevelopmentKit(JDK),版本需与Hadoop兼容。可从Oracle官网下载安装包。环境变量配置:编辑/etc/profile文件,设置Java和Hadoop的环境变量,使系统能够找到JDK和Hadoop的安装路径。二、安全配置:SSH免密登录生成SSH密钥:在每个节点上使用ssh-keygen命令

可以通过使用 Oracle 的动态 SQL 来根据运行时输入创建和执行 SQL 语句。步骤包括:准备一个空字符串变量来存储动态生成的 SQL 语句。使用 EXECUTE IMMEDIATE 或 PREPARE 语句编译和执行动态 SQL 语句。使用 bind 变量传递用户输入或其他动态值给动态 SQL。使用 EXECUTE IMMEDIATE 或 EXECUTE 执行动态 SQL 语句。

VS Code扩展安装失败的原因可能包括:网络不稳定、权限不足、系统兼容性问题、VS Code版本过旧、杀毒软件或防火墙干扰。通过检查网络连接、权限、日志文件、更新VS Code、禁用安全软件以及重启VS Code或计算机,可以逐步排查和解决问题。

Oracle 日志文件写满时,可采用以下解决方案:1)清理旧日志文件;2)增加日志文件大小;3)增加日志文件组;4)设置自动日志管理;5)重新初始化数据库。在实施任何解决方案前,建议备份数据库以防数据丢失。

VS Code 可以在 Mac 上使用。它具有强大的扩展功能、Git 集成、终端和调试器,同时还提供了丰富的设置选项。但是,对于特别大型项目或专业性较强的开发,VS Code 可能会有性能或功能限制。

Oracle不仅是数据库公司,还是云计算和ERP系统的领导者。1.Oracle提供从数据库到云服务和ERP系统的全面解决方案。2.OracleCloud挑战AWS和Azure,提供IaaS、PaaS和SaaS服务。3.Oracle的ERP系统如E-BusinessSuite和FusionApplications帮助企业优化运营。
