奇怪的Oracle错误:标识符太长ORA-00972

Muz*_*hua 11 sql oracle erlang odbc

使用ORACLE 10g时遇到了这个问题.我在这里阅读了这个问题的答案(ora-00972标识符太长了oracle 10g)堆栈溢出但它们没有为我工作.也许我的情况有所不同.

现在我有这些表名:WIMAX_TRAFFIC_STATSWIMAX_RADIO_STATS.当我尝试通过ODBC连接将数据插入到它们时Erlang/OTP,我得到了错误:

{error,"[DataDirect][ODBC Oracle Wire Protocol driver][Oracle]ORA-00972: 
identifier is toolong SQLSTATE IS: HY000"}
所以,我搜索谷歌并找到答案说,也许我的表名太长了.所以我在下面做了这个并再次尝试:
SQL> ALTER TABLE WIMAX_RADIO_STATS RENAME TO WR;
Table altered.
SQL> ALTER TABLE WIMAX_TRAFFIC_STATS RENAME TO WT;
Table altered.
我仍然得到同样的错误.其他来源sya,它可能是我在我的一些专栏中写的数据.我的表定义如下:


SQL> DESCRIBE WT;
 Name                                      Null?    Type
 ----------------------------------------- -------- -----------------
 SDATE                                              DATE
 ELEMENT_TYPE                                       VARCHAR2(50)
 MANAGED_ELEMENT                                    VARCHAR2(50)
 USER_LABEL                                         VARCHAR2(200)
 JOB_ID                                             VARCHAR2(50)
 MEAS_TYPE                                          VARCHAR2(50)
 MEAS_VALUE                                         VARCHAR2(50)

我在那里写的数据值都不比列长度定义长.我真的好奇.我试图在表中编写长度小于10个字符但仍然出现此错误的字符串.请帮助一些身体!

EDIT

SAMPLE查询请求如下:

INSERT INTO WT(element_type,managed_element,user_label,job_id,meas_type,
meas_value) VALUES("BreezeMAX MBS",
"SubNetwork=ASN,MeContext=,ManagedElement=MBS.172.17.9.9",
"BMAX-Shoal2[MTN-Egate]",
"99297","rbMngmntPortPacketsDiscardedOnRx","0");

SDATE字段的默认设置为 sysdate

Mat*_*Mat 23

你使用的是错误的引号.

VALUES('BreezeMAX MBS',
       ^             ^
Run Code Online (Sandbox Code Playgroud)

演示:

SQL> create table t (a varchar(100));
Table created.

SQL> insert into t(a) values ("qasdqsdqsdqsdqsdqsdqsdlmqmsldqsmldqsmldq");
insert into t(a) values ("qasdqsdqsdqsdqsdqsdqsdlmqmsldqsmldqsmldq")
                         *
ERROR at line 1:
ORA-00972: identifier is too long

SQL> insert into t(a) values ('qasdqsdqsdqsdqsdqsdqsdlmqmsldqsmldqsmldq');
1 row created.
Run Code Online (Sandbox Code Playgroud)