时间:2020-10-10来源:www.pcxitongcheng.com作者:电脑系统城
一、问题由来
现在进行项目改造,数据库需要迁移,由原来的使用GBase数据库改为使用Oracle数据库,今天测试人员在测试时后台报了一个异常。
把SQL语句单独复制出来进行查询,还是报错,仔细分析原因才知道是表中的字段使用了Oracle中的关键字size。
二、问题分析
项目中使用的Oracle版本如下:
一般来说建表的时候是不会使用关键字的,可是之前的开发人员或者是数据库运维人员可能为了偷懒吧,在那张表中使用四个Oracle中的关键字,
所以导致查询的时候出现异常。
三、解决方案
找到问题的原因后,问题就好解决了。询问了一下开发的同事有没有好的解决办法,有个同事说这种情况可是在查询的列中使用双引号
将需要查询的字段包起来试一下。我立马去尝试,简单查询时确实可行,可是使用分组查询查询后立马报错。下面是查询语句:
所以使用双引号的方案被否定了,因为不管使用或者是不使用双引号将关键字包起来,group by 后面都不能跟Oracle的关键字。除了这个问题外,
在新增数据的时候,也是出现各种问题,按照常规的方式不能正常插入,只能按照如下的方式进行插入,在新增时表后面不跟列名:
衡量利弊后,发现表中字段使用关键字这种方式非常不可取,还是改列名这个方法最靠谱。
2023-10-31
Oracle如何编写一个sqlldr实例2023-10-31
Oracle的SQLLDR用法简介2023-10-31
Oracle中的高效SQL编写PARALLEL解析1.Oracle数据库系统结构概述 2.Oracle数据库存储结构 物理存储结构 控制文件 数据文件 重做日志文件 归档日志文件 Oracle数据库逻辑结构 数据块(Data Block) (盘)区(Extent) 段(Segment) 表空间(Tablespace) 本地管...
2023-10-31
windows下的Oracle19c 一、官网下载Oracle19c数据库 二、安装Oracle数据库 1.解压安装包 2.运行setup.exe安装 三、配置 四、安装完Oracle数据库,给scott用户解锁 1.解决Oracle数据库中没有scott账户的问题 2.给scott...
2023-10-31