pl/sql报错:Identifier is too long

简介: 在使用pl/sql的时候出现了:Identifier is too long这个错误,字面的意思是标识符过长,也查过资料,基本上都是说:标识符是不可以超过30。

在使用pl/sql的时候出现了:Identifier is too long这个错误,字面的意思是标识符过长,也查过资料,基本上都是说:标识符是不可以超过30。

解决方法1:

Cause: The name of a schema object exceeds 30 characters. Schema objects are
tables, clusters, views, indexes, synonyms, tablespaces, and usernames.
Action: Shorten the name to 30 characters or less.
这个是官方的说法,大致意思就是说你起的名字(标识符)不可以超过30个字符,包括:表,视图,索引,簇,同义词,表空间,和用户名。

解决方法2:

如果是第一种方法中所造成的错误还好,但是我的错误并不是标识符超过30个字符所造成的。下面是我执行的时候遇到的报错sql:

SELECT T.NATI_TASK_ID 主键,
       D.AREA_NAME 地点名称,
       T.MANAGE_TYPE 类型,
       SP.DATA_END_DATE 结束时间,
       T.CRE_USER_ROLE_ID 角色ID
       .......--之间还有一些类似的条件
  FROM CS_NATI_TASKL T


我这个sql中并没有超过30个字符的标识符,但是也报了:Identifier is too long这个错误。

看起来很奇怪,我的名称都没有超过30个字符,怎么就出现这个错误了呢?

仔细想一下,其实这个错误也不奇怪,我们应该可以想到是字符集不匹配所造成的。

先不管是不是这个原因造成的,先试一下。我们在环境变量中加入:

变量名:NLS_LANG
变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
(也可以使用:AMERICAN_AMERICA.UTF8)

重新启动pl/sql,OK!搞定,可以执行了。

解决方法3:

这个方法和方法2的解决思路是一样的,只是途径不同,此方法是直接通过注册表来修改的。

运行:regedit -- HKEY_LOCAL_MACHINE -- SOFTWARE -- ORACLE -- KEY_OraClient11g_home1和KEY_OraDb11g_home1

找到NLS_LANG修改为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK即可。


目录
相关文章
|
2月前
|
SQL 关系型数据库 MySQL
这样的SQL执行为什么不会报错?optimizer_trace深度历险
【10月更文挑战第12天】本文探讨了一条看似错误但实际上能成功执行的SQL语句,通过开启MySQL的优化器追踪功能,详细分析了SQL的执行过程,揭示了子查询被优化器解析为连接操作的原因,最终解释了为何该SQL不会报错。文章不仅增进了对SQL优化机制的理解,也展示了如何利用优化器追踪解决实际问题。
|
3月前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
114 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
3月前
|
SQL 数据库
SQL解析相关报错
SQL解析相关报错
49 5
|
4月前
|
XML SQL 数据格式
XML动态sql查询当前时间之前的信息报错
XML动态sql查询当前时间之前的信息报错
58 2
|
4月前
|
SQL 分布式计算 DataWorks
DataWorks操作报错合集之新建项目的元数据的sql报错,如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
1月前
|
SQL 数据采集 监控
局域网监控电脑屏幕软件:PL/SQL 实现的数据库关联监控
在当今网络环境中,基于PL/SQL的局域网监控系统对于企业和机构的信息安全至关重要。该系统包括屏幕数据采集、数据处理与分析、数据库关联与存储三个核心模块,能够提供全面而准确的监控信息,帮助管理者有效监督局域网内的电脑使用情况。
35 2
|
1月前
|
SQL
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
35 1
|
2月前
|
SQL 关系型数据库 MySQL
|
3月前
|
关系型数据库 MySQL Nacos
nacos启动报错 load derby-schema.sql error
这篇文章描述了作者在使用Nacos时遇到的启动错误,错误提示为加载derby-schema.sql失败,作者通过将数据库从Derby更换为MySQL解决了问题。
nacos启动报错 load derby-schema.sql error
|
3月前
|
关系型数据库 MySQL Java
flywa报错java.sql.SQLSyntaxErrorException: Unknown database ‘flyway‘
flywa报错java.sql.SQLSyntaxErrorException: Unknown database ‘flyway‘
43 1