zoukankan      html  css  js  c++  java
  • ORA-00972: identifier is too long 问题处理

    ORA-00972: identifier is too long 问题处理

        关于这个错误从报错提示来看,就是标识位置字段太长了,一般出现在别名长度问题上。这种情况对字段做出些修改即可。还有另外一种情况,也会报相同的错误,一条SQL可以在客户端工具如navicat,PLSQL等执行,但是却无法在SQL Plus中执行。出现这种情况一般是字符集的问题。
    

    测试流程:

    1)在SQL Plus中执行

    SYS@proe>SELECT 
      a.tablespace_name "表空间名", 
      total / 1024 / 1024 "表空间大小单位M", 
      free / 1024 / 1024 "表空间剩余大小单位M", 
      (total - free) / 1024 / 1024 "表空间使用大小单位M", 
      Round(
        (total - free) / total, 
        4
      ) * 100 "使用率   [[%]]" 
    FROM 
      (
        SELECT 
          tablespace_name, 
          Sum(bytes) free 
        FROM 
          DBA_FREE_SPACE 
        GROUP BY 
          tablespace_name
      ) a, 
      (
        SELECT 
          tablespace_name, 
          Sum(bytes) total 
        FROM 
          DBA_DATA_FILES 
        GROUP BY 
          tablespace_name
      ) b 
    WHERE 
      a.tablespace_name = b.tablespace_name;  2    3    4    5    6    7    8    9   10   11   12   13   14   15   16   17   18   19 
      20   21   22   23   24   25   26   27   28   29   30  
    
      a.tablespace_name "表空间名",
                        *
    ERROR at line 2:
    ORA-00972: identifier is too long

    2)在navicat中执行

    image-20200824125627110

            可以看到在navicat中可以正常执行,但是在sqlplus中报错。
    

    解决办法:

        重新定义环境变量
    
    [oracle@server1 ~]$ export NLS_LANG='american_america.AL32UTF8'
    SYS@proe>SELECT 
      a.tablespace_name "表空间名", 
      total / 1024 / 1024 "表空间大小单位M", 
      free / 1024 / 1024 "表空间剩余大小单位M", 
      (total - free) / 1024 / 1024 "表空间使用大小单位M", 
      Round(
        (total - free) / total, 
        4
      ) * 100 "使用率   [[%]]" 
    FROM 
      (
        SELECT 
          tablespace_name, 
          Sum(bytes) free 
        FROM 
          DBA_FREE_SPACE 
        GROUP BY 
          tablespace_name
      ) a, 
      (
        SELECT 
          tablespace_name, 
          Sum(bytes) total 
        FROM 
          DBA_DATA_FILES 
        GROUP BY 
          tablespace_name
      ) b 
    WHERE 
      a.tablespace_name = b.tablespace_name;  2    3    4    5    6    7    8    9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30  
    
    
    表空间名        表空间大小单位M 表空间剩余大小单位M 表空间使用大小单位M 使用率   [[%]]
    --------------- --------------- ------------------- ------------------- --------------
    SYSAUX                      610             33.0625            576.9375          94.58
    UNDOTBS1                     90             67.4375             22.5625          25.07
    USERS                      6.25                .875               5.375             86
    TBS_TRAN                    100              98.875               1.125           1.13
    SYSTEM                      750                   1                 749          99.87
    EXAMPLE                  346.25             36.0625            310.1875          89.58
    TEST_1                       20                  19                   1              5
    
    
    7 rows selected.




  • 相关阅读:
    jQuery 选择城市,显示对应的即时时区时间
    HTML5 LocalStorage 本地存储,刷新值还在
    jQuery 鼠标拖拽移动窗口
    css/css3常用收集/笔记
    Linux下删除命令 硬盘空间查看... 常用命令
    linux 下 zip unzip压缩与解压
    js字节转换、字节转换GB等
    jquery 判断网络图片,或网络文件是否存在
    js中substr,substring,indexOf,lastIndexOf,split 的用法
    apktool、dex2jar、jd-gui的区别及详解
  • 原文地址:https://www.cnblogs.com/plutozzl/p/13553297.html
Copyright © 2011-2022 走看看