Hi,
I have a script, that I have to migrate from a MSSQL-DB to Oracle. before I
used an ODBC connection to the MSSQL, so I just changed that ODBC connection.
Everything *should* work as before, but it doesn't. I don't get data from the
Oracle DB. Here's the facts:
connect:
my $msdbh = DBI->connect("dbi:ODBC:LABELPRINT", "user", "password", {
RaiseError => 1, PrintError => 1, AutoCommit => 1 } ) or do {&myError
("$DBI::errstr");};
Select:
my $mssth=$msdbh->prepare("SELECT SPEDITION,KEP FROM $speditionen");
$mssth->execute;
my $rh_speditionen=$mssth->fetchall_hashref('SPEDITION');
print Dumper $rh_speditionen;
that is the exact same code as used with the MSSQL, but it doesn't work
anymore... where could I else check for the problem?
I made a ODBC Log, but don't understand it too well... (there's a connect error
in the beginning for example, but afterwards the select works?)
------ODBC LOG----------------------------------------------------------
perl -w labelpr 11f8-1614 ENTER SQLAllocHandle
SQLSMALLINT 1 <SQL_HANDLE_ENV>
SQLHANDLE 00000000
SQLHANDLE * 022776C8
perl -w labelpr 11f8-1614 EXIT SQLAllocHandle with return code 0
(SQL_SUCCESS)
SQLSMALLINT 1 <SQL_HANDLE_ENV>
SQLHANDLE 00000000
SQLHANDLE * 0x022776C8 ( 0x02801788)
perl -w labelpr 11f8-1614 ENTER SQLSetEnvAttr
SQLHENV 02801788
SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER 0x00000003
SQLINTEGER -6
perl -w labelpr 11f8-1614 EXIT SQLSetEnvAttr with return code 0
(SQL_SUCCESS)
SQLHENV 02801788
SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER 0x00000003 (BADMEM)
SQLINTEGER -6
perl -w labelpr 11f8-1614 ENTER SQLAllocHandle
SQLSMALLINT 2 <SQL_HANDLE_DBC>
SQLHANDLE 02801788
SQLHANDLE * 021C1894
perl -w labelpr 11f8-1614 EXIT SQLAllocHandle with return code 0
(SQL_SUCCESS)
SQLSMALLINT 2 <SQL_HANDLE_DBC>
SQLHANDLE 02801788
SQLHANDLE * 0x021C1894 ( 0x02801830)
perl -w labelpr 11f8-1614 ENTER SQLDriverConnectW
HDBC 02801830
HWND 00000000
WCHAR * 0x745D9A38 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x745D9A38
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
perl -w labelpr 11f8-1614 EXIT SQLDriverConnectW with return code -1
(SQL_ERROR)
HDBC 02801830
HWND 00000000
WCHAR * 0x745D9A38 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x745D9A38
SWORD 2
SWORD * 0x00000000
UWORD 0 <SQL_DRIVER_NOPROMPT>
DIAG [IM002] [Microsoft][ODBC Driver Manager] Der
Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber
angegeben (0)
DIAG [01S00] [Microsoft][ODBC Driver Manager] Ungültiges
Attribut für die Verbindungszeichenfolge (0)
perl -w labelpr 11f8-1614 ENTER SQLErrorW
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140EE28 (NYI)
SDWORD * 0x0140F064
WCHAR * 0x0140EA28
SWORD 511
SWORD * 0x0140F06E
perl -w labelpr 11f8-1614 EXIT SQLErrorW with return code 0
(SQL_SUCCESS)
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140EE28 (NYI)
SDWORD * 0x0140F064 (0)
WCHAR * 0x0140EA28 [ 119] "[Microsoft][ODBC
Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein
Standardtreiber angegeben"
SWORD 511
SWORD * 0x0140F06E (119)
perl -w labelpr 11f8-1614 ENTER SQLErrorW
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140EE28 (NYI)
SDWORD * 0x0140F064
WCHAR * 0x0140EA28
SWORD 511
SWORD * 0x0140F06E
perl -w labelpr 11f8-1614 EXIT SQLErrorW with return code 0
(SQL_SUCCESS)
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140EE28 (NYI)
SDWORD * 0x0140F064 (0)
WCHAR * 0x0140EA28 [ 84] "[Microsoft][ODBC
Driver Manager] Ungültiges Attribut für die Verbindungszeichenfolge"
SWORD 511
SWORD * 0x0140F06E (84)
perl -w labelpr 11f8-1614 ENTER SQLErrorW
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140EE28 (NYI)
SDWORD * 0x0140F064
WCHAR * 0x0140EA28
SWORD 511
SWORD * 0x0140F06E
perl -w labelpr 11f8-1614 EXIT SQLErrorW with return code 100
(SQL_NO_DATA_FOUND)
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140EE28 (NYI)
SDWORD * 0x0140F064
WCHAR * 0x0140EA28
SWORD 511
SWORD * 0x0140F06E
perl -w labelpr 11f8-1614 ENTER SQLConnectW
HDBC 02801830
WCHAR * 0x028029C8 [ 10] "LABELPRINT"
SWORD 10
WCHAR * 0x745D9A38 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x745D9A38 [ -3] "******\ 0"
SWORD -3
perl -w labelpr 11f8-1614 EXIT SQLConnectW with return code 0
(SQL_SUCCESS)
HDBC 02801830
WCHAR * 0x028029C8 [ 10] "LABELPRINT"
SWORD 10
WCHAR * 0x745D9A38 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x745D9A38 [ -3] "******\ 0"
SWORD -3
perl -w labelpr 11f8-1614 ENTER SQLSetConnectOption
HDBC 02801830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001
perl -w labelpr 11f8-1614 EXIT SQLSetConnectOption with return code 0
(SQL_SUCCESS)
HDBC 02801830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001 (BADMEM)
perl -w labelpr 11f8-1614 ENTER SQLGetInfoW
HDBC 02801830
UWORD 77 <SQL_DRIVER_ODBC_VER>
PTR 0x02801DD0
SWORD 40
SWORD * 0x0140FA9A
perl -w labelpr 11f8-1614 EXIT SQLGetInfoW with return code 0
(SQL_SUCCESS)
HDBC 02801830
UWORD 77 <SQL_DRIVER_ODBC_VER>
PTR 0x02801DD0 [ 10] "03.52"
SWORD 40
SWORD * 0x0140FA9A (10)
perl -w labelpr 11f8-1614 ENTER SQLGetInfoW
HDBC 02801830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x02801E10
SWORD 128
SWORD * 0x0140FA9A
perl -w labelpr 11f8-1614 EXIT SQLGetInfoW with return code 0
(SQL_SUCCESS)
HDBC 02801830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x02801E10 [ 12] "Oracle"
SWORD 128
SWORD * 0x0140FA9A (12)
perl -w labelpr 11f8-1614 ENTER SQLGetFunctions
HDBC 02801830
UWORD 61
UWORD * 0x0140FAAE
perl -w labelpr 11f8-1614 EXIT SQLGetFunctions with return code 0
(SQL_SUCCESS)
HDBC 02801830
UWORD 61
UWORD * 0x0140FAAE (1)
perl -w labelpr 11f8-1614 ENTER SQLGetFunctions
HDBC 02801830
UWORD 58
UWORD * 0x0140FAAE
perl -w labelpr 11f8-1614 EXIT SQLGetFunctions with return code 0
(SQL_SUCCESS)
HDBC 02801830
UWORD 58
UWORD * 0x0140FAAE (1)
perl -w labelpr 11f8-1614 ENTER SQLSetConnectOption
HDBC 02801830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001
perl -w labelpr 11f8-1614 EXIT SQLSetConnectOption with return code 0
(SQL_SUCCESS)
HDBC 02801830
SQLINTEGER 102 <SQL_AUTOCOMMIT>
SQLPOINTER 0x00000001 (BADMEM)
perl -w labelpr 11f8-1614 ENTER SQLAllocHandle
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 02801830
SQLHANDLE * 022B5148
perl -w labelpr 11f8-1614 EXIT SQLAllocHandle with return code 0
(SQL_SUCCESS)
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 02801830
SQLHANDLE * 0x022B5148 ( 0x02801ea8)
perl -w labelpr 11f8-1614 ENTER SQLPrepare
HSTMT 02801EA8
UCHAR * 0x022B5644 [ 44] "SELECT SPEDITION,KEP
FROM LABELPRINT_SPED_IN"
SDWORD 44
perl -w labelpr 11f8-1614 EXIT SQLPrepare with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UCHAR * 0x022B5644 [ 44] "SELECT SPEDITION,KEP
FROM LABELPRINT_SPED_IN"
SDWORD 44
perl -w labelpr 11f8-1614 ENTER SQLExecute
HSTMT 02801EA8
perl -w labelpr 11f8-1614 EXIT SQLExecute with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
perl -w labelpr 11f8-1614 ENTER SQLRowCount
HSTMT 02801EA8
SQLLEN * 0x022B5170
perl -w labelpr 11f8-1614 EXIT SQLRowCount with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
SQLLEN * 0x022B5170 (-1)
perl -w labelpr 11f8-1614 ENTER SQLNumResultCols
HSTMT 02801EA8
SWORD * 0x0140FBB6
perl -w labelpr 11f8-1614 EXIT SQLNumResultCols with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
SWORD * 0x0140FBB6 (2)
perl -w labelpr 11f8-1614 ENTER SQLDescribeCol
HSTMT 02801EA8
UWORD 1
UCHAR * 0x0140FA94
SWORD 255
SWORD * 0x022B741C
SWORD * 0x022B7426
SQLULEN * 0x022B7420
SWORD * 0x022B7424
SWORD * 0x022B7428
perl -w labelpr 11f8-1614 EXIT SQLDescribeCol with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 1
UCHAR * 0x0140FA94 [ 9] "SPEDITION"
SWORD 255
SWORD * 0x022B741C (9)
SWORD * 0x022B7426 (-9)
SQLULEN * 0x022B7420 (50)
SWORD * 0x022B7424 (0)
SWORD * 0x022B7428 (1)
perl -w labelpr 11f8-1614 ENTER SQLColAttributes
HSTMT 02801EA8
UWORD 1
UWORD 6 <SQL_COLUMN_DISPLAY_SIZE>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B7430
perl -w labelpr 11f8-1614 EXIT SQLColAttributes with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 1
UWORD 6 <SQL_COLUMN_DISPLAY_SIZE>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B7430 (50)
perl -w labelpr 11f8-1614 ENTER SQLColAttributes
HSTMT 02801EA8
UWORD 1
UWORD 3 <SQL_COLUMN_LENGTH>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B742C
perl -w labelpr 11f8-1614 EXIT SQLColAttributes with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 1
UWORD 3 <SQL_COLUMN_LENGTH>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B742C (200)
perl -w labelpr 11f8-1614 ENTER SQLDescribeCol
HSTMT 02801EA8
UWORD 2
UCHAR * 0x0140FA94
SWORD 255
SWORD * 0x022B7858
SWORD * 0x022B7862
SQLULEN * 0x022B785C
SWORD * 0x022B7860
SWORD * 0x022B7864
perl -w labelpr 11f8-1614 EXIT SQLDescribeCol with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 2
UCHAR * 0x0140FA94 [ 3] "KEP"
SWORD 255
SWORD * 0x022B7858 (3)
SWORD * 0x022B7862 (3)
SQLULEN * 0x022B785C (1)
SWORD * 0x022B7860 (0)
SWORD * 0x022B7864 (1)
perl -w labelpr 11f8-1614 ENTER SQLColAttributes
HSTMT 02801EA8
UWORD 2
UWORD 6 <SQL_COLUMN_DISPLAY_SIZE>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B786C
perl -w labelpr 11f8-1614 EXIT SQLColAttributes with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 2
UWORD 6 <SQL_COLUMN_DISPLAY_SIZE>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B786C (3)
perl -w labelpr 11f8-1614 ENTER SQLColAttributes
HSTMT 02801EA8
UWORD 2
UWORD 3 <SQL_COLUMN_LENGTH>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B7868
perl -w labelpr 11f8-1614 EXIT SQLColAttributes with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 2
UWORD 3 <SQL_COLUMN_LENGTH>
PTR 0x00000000
SWORD 0
SWORD * 0x00000000
SQLLEN * 0x022B7868 (3)
perl -w labelpr 11f8-1614 ENTER SQLDescribeCol
HSTMT 02801EA8
UWORD 1
UCHAR * 0x022AF95C
SWORD 255
SWORD * 0x022B741C
SWORD * 0x022B7426
SQLULEN * 0x022B7420
SWORD * 0x022B7424
SWORD * 0x022B7428
perl -w labelpr 11f8-1614 EXIT SQLDescribeCol with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 1
UCHAR * 0x022AF95C [ 9] "SPEDITION"
SWORD 255
SWORD * 0x022B741C (9)
SWORD * 0x022B7426 (-9)
SQLULEN * 0x022B7420 (50)
SWORD * 0x022B7424 (0)
SWORD * 0x022B7428 (1)
perl -w labelpr 11f8-1614 ENTER SQLBindCol
HSTMT 02801EA8
UWORD 1
SWORD 1 <SQL_C_CHAR>
PTR 0x022B568C
SQLLEN 200
SQLLEN * 0x022B743C
perl -w labelpr 11f8-1614 EXIT SQLBindCol with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 1
SWORD 1 <SQL_C_CHAR>
PTR 0x022B568C
SQLLEN 200
SQLLEN * 0x022B743C (0)
perl -w labelpr 11f8-1614 ENTER SQLDescribeCol
HSTMT 02801EA8
UWORD 2
UCHAR * 0x022AF966
SWORD 255
SWORD * 0x022B7858
SWORD * 0x022B7862
SQLULEN * 0x022B785C
SWORD * 0x022B7860
SWORD * 0x022B7864
perl -w labelpr 11f8-1614 EXIT SQLDescribeCol with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 2
UCHAR * 0x022AF966 [ 3] "KEP"
SWORD 255
SWORD * 0x022B7858 (3)
SWORD * 0x022B7862 (3)
SQLULEN * 0x022B785C (1)
SWORD * 0x022B7860 (0)
SWORD * 0x022B7864 (1)
perl -w labelpr 11f8-1614 ENTER SQLBindCol
HSTMT 02801EA8
UWORD 2
SWORD 1 <SQL_C_CHAR>
PTR 0x022B5754
SQLLEN 4
SQLLEN * 0x022B7878
perl -w labelpr 11f8-1614 EXIT SQLBindCol with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 2
SWORD 1 <SQL_C_CHAR>
PTR 0x022B5754
SQLLEN 4
SQLLEN * 0x022B7878 (0)
perl -w labelpr 11f8-1614 ENTER SQLFetch
HSTMT 02801EA8
perl -w labelpr 11f8-1614 EXIT SQLFetch with return code 100
(SQL_NO_DATA_FOUND)
HSTMT 02801EA8
perl -w labelpr 11f8-1614 ENTER SQLMoreResults
HSTMT 02801EA8
perl -w labelpr 11f8-1614 EXIT SQLMoreResults with return code 100
(SQL_NO_DATA_FOUND)
HSTMT 02801EA8
perl -w labelpr 11f8-1614 ENTER SQLErrorW
HENV 02801788
HDBC 02801830
HSTMT 02801EA8
WCHAR * 0x0140F6A0 (NYI)
SDWORD * 0x0140F8E8
WCHAR * 0x0140F2A0
SWORD 511
SWORD * 0x0140F906
perl -w labelpr 11f8-1614 EXIT SQLErrorW with return code 100
(SQL_NO_DATA_FOUND)
HENV 02801788
HDBC 02801830
HSTMT 02801EA8
WCHAR * 0x0140F6A0 (NYI)
SDWORD * 0x0140F8E8
WCHAR * 0x0140F2A0
SWORD 511
SWORD * 0x0140F906
perl -w labelpr 11f8-1614 ENTER SQLErrorW
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140F6A0 (NYI)
SDWORD * 0x0140F8E8
WCHAR * 0x0140F2A0
SWORD 511
SWORD * 0x0140F906
perl -w labelpr 11f8-1614 EXIT SQLErrorW with return code 100
(SQL_NO_DATA_FOUND)
HENV 02801788
HDBC 02801830
HSTMT 00000000
WCHAR * 0x0140F6A0 (NYI)
SDWORD * 0x0140F8E8
WCHAR * 0x0140F2A0
SWORD 511
SWORD * 0x0140F906
perl -w labelpr 11f8-1614 ENTER SQLErrorW
HENV 02801788
HDBC 00000000
HSTMT 00000000
WCHAR * 0x0140F6A0 (NYI)
SDWORD * 0x0140F8E8
WCHAR * 0x0140F2A0
SWORD 511
SWORD * 0x0140F906
perl -w labelpr 11f8-1614 EXIT SQLErrorW with return code 100
(SQL_NO_DATA_FOUND)
HENV 02801788
HDBC 00000000
HSTMT 00000000
WCHAR * 0x0140F6A0 (NYI)
SDWORD * 0x0140F8E8
WCHAR * 0x0140F2A0
SWORD 511
SWORD * 0x0140F906
perl -w labelpr 11f8-1614 ENTER SQLFreeStmt
HSTMT 02801EA8
UWORD 0 <SQL_CLOSE>
perl -w labelpr 11f8-1614 EXIT SQLFreeStmt with return code 0
(SQL_SUCCESS)
HSTMT 02801EA8
UWORD 0 <SQL_CLOSE>
perl -w labelpr 11f8-1614 ENTER SQLFreeHandle
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 02801EA8
perl -w labelpr 11f8-1614 EXIT SQLFreeHandle with return code 0
(SQL_SUCCESS)
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 02801EA8
perl -w labelpr 11f8-1614 ENTER SQLGetConnectOption
HDBC 02801830
UWORD 102
PTR 0x0140FAAC
perl -w labelpr 11f8-1614 EXIT SQLGetConnectOption with return code 0
(SQL_SUCCESS)
HDBC 02801830
UWORD 102
PTR 0x0140FAAC
perl -w labelpr 11f8-1614 ENTER SQLDisconnect
HDBC 02801830
perl -w labelpr 11f8-1614 EXIT SQLDisconnect with return code 0
(SQL_SUCCESS)
HDBC 02801830
perl -w labelpr 11f8-1614 ENTER SQLFreeHandle
SQLSMALLINT 2 <SQL_HANDLE_DBC>
SQLHANDLE 02801830
perl -w labelpr 11f8-1614 EXIT SQLFreeHandle with return code 0
(SQL_SUCCESS)
SQLSMALLINT 2 <SQL_HANDLE_DBC>
SQLHANDLE 02801830
perl -w labelpr 11f8-1614 ENTER SQLFreeHandle
SQLSMALLINT 1 <SQL_HANDLE_ENV>
SQLHANDLE 02801788
perl -w labelpr 11f8-1614 EXIT SQLFreeHandle with return code 0
(SQL_SUCCESS)
SQLSMALLINT 1 <SQL_HANDLE_ENV>
SQLHANDLE 02801788