Oracle Table 为 34 个字符的标识符太长错误Oracle ODBC ORA-00972:标识符太长
Identifier Too Long Error Where Oracle Table is 34 charactersOracle ODBC ORA-00972: identifier is too Long
我有以下 SQL 对 Oracle ODBC 的支持:
SELECT t.INS_RQMT_PRODCT_NO, t.NEW_DEPT_NO
FROM SUBMISSION_OBJECT_SEGMENTATION_REF t
WHERE t.INS_RQMT_PRODUCT_NO IN (''6228506'')
我在 VBA 中 运行 时收到以下错误:
我怀疑它来自 SUBMISSION_OBJECT_SEGMENTATION_REF
。但是,我无法 控制此数据库\table 名称组合的长度。
我已经在网上搜索以绕过它,但没有找到任何运气。
SUBMISSION_OBJECT
是数据库名称。 SEGMENTATION_REF
是 table 名称。
我也试过SUBMISSION_OBJECT.SEGMENTATION_REF
,但没有成功。
SELECT t.INS_RQMT_PRODCT_NO, t.NEW_DEPT_NO
FROM SUBMISSION_OBJECT.SEGMENTATION_REF t
WHERE t.INS_RQMT_PRODUCT_NO IN (''6228506'')
产生
ORA-00907: missing right parenthesis
供参考,vba调用代码如下:
Function downloadsqltoexcel(conn As ADODB.Connection, sSQL As String, exceldestinationrangename As String, sqltablename As String, bDownload As Boolean, Optional ws As Worksheet) As Variant
Dim rsPubs As ADODB.Recordset
Set rsPubs = New ADODB.Recordset
With rsPubs
.ActiveConnection = conn
.CursorLocation = adUseClient
.Open sSQL, conn, adOpenKeyset, adLockReadOnly, adCmdText
'**** errors on above line ****
您不使用下划线将数据库名称与 table 名称分开。您使用句点:
SELECT t.INS_RQMT_PRODCT_NO, t.NEW_DEPT_NO
FROM SUBMISSION_OBJECT.SEGMENTATION_REF t
WHERE t.INS_RQMT_PRODUCT_NO IN ('6228506')
我有以下 SQL 对 Oracle ODBC 的支持:
SELECT t.INS_RQMT_PRODCT_NO, t.NEW_DEPT_NO
FROM SUBMISSION_OBJECT_SEGMENTATION_REF t
WHERE t.INS_RQMT_PRODUCT_NO IN (''6228506'')
我在 VBA 中 运行 时收到以下错误:
我怀疑它来自 SUBMISSION_OBJECT_SEGMENTATION_REF
。但是,我无法 控制此数据库\table 名称组合的长度。
我已经在网上搜索以绕过它,但没有找到任何运气。
SUBMISSION_OBJECT
是数据库名称。 SEGMENTATION_REF
是 table 名称。
我也试过SUBMISSION_OBJECT.SEGMENTATION_REF
,但没有成功。
SELECT t.INS_RQMT_PRODCT_NO, t.NEW_DEPT_NO
FROM SUBMISSION_OBJECT.SEGMENTATION_REF t
WHERE t.INS_RQMT_PRODUCT_NO IN (''6228506'')
产生
ORA-00907: missing right parenthesis
供参考,vba调用代码如下:
Function downloadsqltoexcel(conn As ADODB.Connection, sSQL As String, exceldestinationrangename As String, sqltablename As String, bDownload As Boolean, Optional ws As Worksheet) As Variant
Dim rsPubs As ADODB.Recordset
Set rsPubs = New ADODB.Recordset
With rsPubs
.ActiveConnection = conn
.CursorLocation = adUseClient
.Open sSQL, conn, adOpenKeyset, adLockReadOnly, adCmdText
'**** errors on above line ****
您不使用下划线将数据库名称与 table 名称分开。您使用句点:
SELECT t.INS_RQMT_PRODCT_NO, t.NEW_DEPT_NO
FROM SUBMISSION_OBJECT.SEGMENTATION_REF t
WHERE t.INS_RQMT_PRODUCT_NO IN ('6228506')