1

我想从我的 SAP 系统访问 Unix 数据库。我正在使用 cl_sql_connection 类打开连接。在升级到 EHP7 之前,此类工作正常。但是,现在,我无法在任何 Stabdard SAP 事务(SE16、SE11 ...)中访问表 DBCONN

以下是我的代码,自 EPH7 升级后返回异常。

   * Fetch data from the ACMM application, using db-links.

        TRY.
        CALL METHOD cl_sql_connection=>get_connection
          EXPORTING
            con_name = lw_dbcon_name
          RECEIVING
            con_ref  = lo_sql_connection.

      CATCH cx_sql_exception .
 =>An exception occurred while opening SQL Connection 
    ENDTRY.

他们有什么其他方式可以让我连接到其他服务器吗?

4

1 回答 1

2

就在这里。您可以使用 EXEC SQL 的(旧)变体。

但在此之前,请使用 SE38 中的 ADBC_TEST_CONNECTION 检查连接。

您还可以通过探索您拥有的异常对象来获得更多详细信息。以下是我通常的做法:

TRY.
EXEC SQL.
  CONNECT TO 'ZUNIXDB_DBCON'
ENDEXEC.
EXEC SQL.
  OPEN dbcur FOR
    SELECT id FROM table
ENDEXEC.
CATCH cx_sy_native_sql_error INTO lr_cx_native_sql_error.

现在你有这样的信息:

lr_cx_native_sql_error->get_text( )
lr_cx_native_sql_error->get_longtext( )
lr_cx_native_sql_error->sqlmsg
于 2015-03-05T12:50:24.157 回答