Dynamic Recordset with Oracle ODBC

I'm trying to create a recordset that will automaticaly update
itself when the database has changed. I have tried using a
dynamic cursor but it doesnt work. The cursor type keeps on
getting set to a keyset cursor type. Does Oracle support
dynamic cursors? If so, can someone post an example.

No ODBC driver for Oracle supports the creation of dynamic resordsets. I'm not aware of a driver for any database that does.
Justin

Similar Messages

  • Too many time to open a session with oracle odbc

    I have to migrate an internet site in Sql Server to Oracle.
    When I connect Oracle Database with Oracle ODBC, it takes 2 or 3 seconds.
    So if i have 8 or 10 recordset to open, it takes 20 s.
    But when sessions are open, they live about 1 m and during this time i don't have problem to connect to the database.When i don't use the site during more than 1 m, all sessions are closed and so i have to wait.
    How can i connect to the database quickly the first time?

    Are you using connection pooling? Are you pre-allocating connections on startup?
    Justin

  • "stack overflow" when trying to connect with Oracle ODBC

    Hi,
    I'm trying to connect to Oracle DB (8.1.7.3.0) from WinNT 4.0 SP6 with Oracle ODBC driver 8.0.6.6.0. I've been trying to connect with "Oracle ODBC Test" and with "MS Query". In either way I end up with Dr. Watson reporting about "stack overflow". Before starting to upgrade ODBC driver I wanted to ask - should these versions of driver and DB work together at all (even unofficially)? Or may I be missing some other thing? Any hints, ideas are welcome.
    Regards,
    Madis Priilinn

    Thank You for replying, Justin!
    Yes, I can connect successfully to the database through other tools - at the moment I tried SQL*Plus, Net8 Easy Config and Schema Manager.
    The Oracle client in the NT machine is 8.0.5.0.0. And unfortunately I do not know anything about the Oracle installation on this machine and at the moment I don't have that person near me too whom to ask also. But I think the installation was ok, because the connection through ODBC was working before the DB upgrade as far as I understood (sorry, again at the moment I don't know what was the previous version of DB. I will ask that information as soon as possible).
    The main problem that bothers me at the moment is that I can't install 8.1.* series OraODBC driver with 8.0.5.0.0 Oracle Installer. I managed to install 8.0.6.6.0 version of the driver, but not the newer ones. As far as I've understood I have to upgrade the whole Oracle in the NT machine to upgrade that installer. Am I correct?
    Regards,
    Madis Priilinn

  • Problem with Oracle ODBC Driver on Windows 7

    Hi,
    Please help with this problem I have with a Windows 7 machine. I have installed Oracle Client 11g on my Windows 7 machine but when I want to create an ODBC Data Source, I cant find any driver for oracle. How can I resolve this issue? I need the data source for an application to work and I cant figure out what is happening. Someone please help!

    There's a dedicated Oracle ODBC forum:
    ODBC
    As this forum deals with connections from Oracle to foreign data stores it would be better to close this thread and post it again in the ODBC forum.

  • Insert into CLOB fails with Oracle ODBC driver version 9.02.00.65

    I tried to insert into CLOB using the latest Oracle ODBC driver 9.02.00.65 and it fails. But the same works with earlier versions of ODBC driver earlier to 9.02.00.65 ie., 9.02.00.63.
    Here is the code snippet I tried. Any help now is highly appreciated as I am in the crunch time.
    I tried the same code snippet with VARCHAR2 column with the same driver and it works.
    ** CONVDSN.C - This is the ODBC sample code for
    ** creating File DSN pointers to machine DSNs.
    **This code is furnished on an as-is basis as part of the ODBC SDK and is
    **intended for example purposes only.
    #include <windows.h>
    #include <stdio.h>
    #include <tchar.h>
    #include <sql.h>
    #include <sqlext.h>
    #include <odbcinst.h>
    #include <sqltypes.h>
    #define MAXDATALEN 25 //maximum data length per column
    #define MAX_COL 15 //maximum column in result set
    #define MAX_ROW 100 //maximum number of rows
    #define MAXBUFLEN 256
    #define SQLERR_FORMAT "SQL Error State:%s, Native Error Code: %lX, ODBC Error: %s"
    #define MAXDISPLAYSIZE MAX_COL*(MAXDATALEN+1)
    #define SQLWRNMSGTITLE "SQL_SUCCESS_WITH_INFO results"
    #define SQLERRCNTDTITLE "SQL_ERROR results continued"
    #define SQLWRNMSGTITLE "SQL_SUCCESS_WITH_INFO results"
    #define SQLWRNCNTDTITLE "SQL_SUCCESS_WITH_INFO results continued"
    #define NULLDATASTRING "SQL_NULL_DATA"
    #define SQLERRMSGTITLE "SQL_ERROR results"
    // prototypes
    void ExpandFileName(LPSTR szFileDSNName, LPCSTR szDSNName);
    void MakeLegalName(LPSTR szLegalDSNName, LPCSTR szDSNName);
    // main routine: Iterate through the user and system DSNs, creating a pointer
    // to each.
    void FAR PASCAL DisplayError(SQLRETURN nResult, HWND hWnd, SWORD fHandleType, SQLHANDLE handle);
    void insertSelectClob();
    void checkRcCode(RETCODE rc);
    int main (int argc, char* argv[])
         insertSelectClob();
    return 0;
    void FAR PASCAL DisplayError(SQLRETURN nResult, HWND hWnd, SWORD fHandleType, SQLHANDLE handle)
         UCHAR szErrState[SQL_SQLSTATE_SIZE+1]; // SQL Error State string
         UCHAR szErrText[SQL_MAX_MESSAGE_LENGTH+1]; // SQL Error Text string
         char szBuffer[SQL_SQLSTATE_SIZE+SQL_MAX_MESSAGE_LENGTH+MAXBUFLEN+1];
         // formatted Error text Buffer
         SWORD wErrMsgLen; // Error message length
         UDWORD dwErrCode; // Native Error code
         int iSize; // Display Error Text size
         SQLRETURN nErrResult; // Return Code from SQLGetDiagRec
         SWORD sMsgNum = 1;
         SWORD fFirstRun = TRUE;
         char szDispBuffer[MAXDISPLAYSIZE+1]; // Display Buffer
         szBuffer[0] = '\0';
         do
              // continue to bring messageboxes till all errors are displayed.
              // more than one message box may be reqd. as err text has fixed
              // string size.
              // initialize display buffer with the string in error text buffer
              strcpy(szDispBuffer, szBuffer);
              // call SQLGetDiagRec function with proper ODBC handles, repeatedly until
              // function returns SQL_NO_DATA. Concatenate all error strings
              // in the display buffer and display all results.
              while ((nErrResult = SQLGetDiagRec(fHandleType, handle, sMsgNum++,
                   szErrState, &dwErrCode, szErrText,
                   SQL_MAX_MESSAGE_LENGTH-1, &wErrMsgLen)) != SQL_NO_DATA)
                   if(nErrResult == SQL_ERROR || nErrResult == SQL_INVALID_HANDLE)
                   break;
                   wsprintf(szBuffer, SQLERR_FORMAT, (LPSTR)szErrState, dwErrCode, (LPSTR)szErrText);
                   iSize = strlen(szDispBuffer);
                   if (iSize && (iSize+strlen(szBuffer)+1) >= MAXDISPLAYSIZE)
                   break;
                   if (iSize)
                   strcat(szDispBuffer, "\n");
                   strcat(szDispBuffer, szBuffer);
              // display proper ERROR or WARNING message with proper title
              if (nResult == SQL_SUCCESS_WITH_INFO)
                   MessageBox(hWnd, szDispBuffer, (fFirstRun? SQLWRNMSGTITLE : SQLWRNCNTDTITLE),
                   MB_OK | MB_ICONINFORMATION);
              else
                   MessageBox(hWnd, szDispBuffer, (fFirstRun? SQLERRMSGTITLE : SQLERRCNTDTITLE),
                   MB_OK | MB_ICONEXCLAMATION);
              if (fFirstRun)
                   fFirstRun = FALSE;
         while (!(nErrResult == SQL_NO_DATA || nErrResult == SQL_ERROR || nErrResult == SQL_INVALID_HANDLE));
    void insertSelectClob()
    SQLCHAR clobdata[1001];
    SQLCHAR resultdata[1001];
    SQLINTEGER ind = SQL_DATA_AT_EXEC;
    SQLCHAR *bufp;
         SQLINTEGER cbOrderID = sizeof(SQLSMALLINT);
         SQLSMALLINT sTmp=13;
         SQLCHAR *sqlStmt1  = _T("INSERT INTO clobtbl(id, clob1) VALUES(?, ?)");
         SQLCHAR *sqlStmt2  = _T("SELECT id, clob1 FROM clobtbl");
    //     SQLCHAR *sqlStmt1  = _T("INSERT INTO testInsert(id, clob1) VALUES(?, ?)");
    // SQLCHAR *sqlStmt2  = _T("SELECT id, clob1 FROM testInsert");
    int clobdatalen, chunksize, dtsize, retchklen;
         HENV envHnd;
    HDBC conHnd;
    HSTMT stmtHnd;
    RETCODE rc;
         int nRowcnt=0;
         SQLPOINTER pToken = NULL;
    rc = SQL_SUCCESS;
    // ENV is allocated
    rc = SQLAllocEnv(&envHnd);
    // Connection Handle is allocated
    rc = SQLAllocConnect(envHnd, &conHnd);
    rc = SQLConnect(conHnd, T("testd734"), SQLNTS, T("ipathdba"), SQLNTS, T("ipathdba"), SQLNTS);
    printf(_T("Insert CLOB1 using SQLPutData...\n[%s]\n"), sqlStmt1);
    // Set CLOB Data
    int i;
    SQLCHAR ch;
    for (i=0, ch=_T('A'); i< sizeof(clobdata)/sizeof(SQLCHAR); ++i, ++ch)
    if (ch > _T('Z'))
    ch = _T('A');
    clobdata[i] = ch;
    clobdata[sizeof(clobdata)/sizeof(SQLCHAR)-1] = _T('\0');
    clobdatalen = lstrlen(clobdata); // length of characters
    chunksize = clobdatalen / 7; // 7 times to put
         rc = SQLAllocHandle(SQL_HANDLE_STMT, conHnd, &stmtHnd);
    // Step 1: Prepare
    rc = SQLPrepare(stmtHnd, sqlStmt1, SQL_NTS);
    // checkSQLErr(envHnd, conHnd, stmtHnd, rc);
    // Step 2: Bind Parameter with SQL_DATA_AT_EXEC
    rc = SQLBindParameter(stmtHnd,
    1,
    SQL_PARAM_INPUT,
    SQL_C_SSHORT,
    SQL_INTEGER,
    0,
    0,
    &sTmp,
    0,
    &cbOrderID);
    rc = SQLBindParameter(stmtHnd,
    2,
    SQL_PARAM_INPUT,
    SQL_C_CHAR,
    SQL_LONGVARCHAR,
    clobdatalen*sizeof(CHAR),
    0,
    (SQLPOINTER)clobdata,
    clobdatalen*sizeof(CHAR),
    &ind);
    // checkSQLErr(envHnd, conHnd, stmtHnd, rc);
    // Step 3: Execute
    rc = SQLExecute(stmtHnd);
         while (rc == SQL_NEED_DATA) {
              rc = SQLParamData(stmtHnd, &pToken);
              if (rc == SQL_NEED_DATA) {
                   for (dtsize=0, bufp = clobdata;
                        dtsize < clobdatalen;
                        dtsize += chunksize, bufp += chunksize)
                   int len;
                   if (dtsize+chunksize < clobdatalen)
                        len = chunksize;
                        rc = SQLPutData(stmtHnd, bufp, len*sizeof(SQLCHAR));
                   else
                        len = clobdatalen-dtsize;
                        rc = SQLPutData(stmtHnd, bufp, SQL_NTS);
              rc = SQLParamData(stmtHnd, &pToken);
    // Fails as row count retrieved is zero.
         rc = SQLRowCount(stmtHnd, &nRowcnt);
         if(rc != SQL_SUCCESS)
              DisplayError(rc, NULL, SQL_HANDLE_ENV, conHnd);
    rc = SQLFreeStmt(stmtHnd, SQL_CLOSE);
    printf(_T("Finished Update\n\n"));
    rc = SQLAllocStmt(conHnd, &stmtHnd);
    if (rc != SQL_SUCCESS)
    printf(_T("Failed to allocate STMT\n"));
    exit(-1);
    // Clear Result Data
    memset(resultdata, 0, sizeof(resultdata));
    chunksize = clobdatalen / 15; // 15 times to gut
    rc = SQLExecDirect(stmtHnd, sqlStmt2, SQL_NTS); // select
         if(rc != SQL_SUCCESS)
              DisplayError(rc, NULL, SQL_HANDLE_ENV, conHnd);
    // Step 2: Fetch
    rc = SQLFetch(stmtHnd);
    for(dtsize=0, bufp = resultdata;
    dtsize > sizeof(resultdata)/sizeof(CHAR) && rc != SQL_NO_DATA;
    dtsize += chunksize-1, bufp += chunksize-1)
    int len; // len should contain the space for NULL termination
    if (dtsize+chunksize<sizeof(resultdata)/sizeof(CHAR))
    len = chunksize;
    else
    len = sizeof(resultdata)/sizeof(CHAR)-dtsize;
    // Step 3: GetData
    rc = SQLGetData(stmtHnd,
    2,
    SQL_C_CHAR,
    (SQLPOINTER)bufp,
    len*sizeof(CHAR),
    &retchklen);
    if (!_tcscmp(resultdata, clobdata))
    printf(_T("Succeeded!!\n\n"));
    else
    printf(_T("Failed!!\n\n"));
         if (conHnd)
              SQLFreeConnect(conHnd);
         if (envHnd)
              SQLFreeEnv(envHnd);
    }

    Hi,
    Since 9.2 has been desupported for error correction you will not be able to download that version from OTN. You should ask whoever is providing the training if their is an alternate version you can use. The only versions that you will be able to download from oracle.com is 10.2 11.1, and 11.2.

  • Memory Leak with Oracle ODBC Driver for Long Raw columns

    Oracle version : 8.1.7
    Platform : Win2K
    Oracle ODBC Driver version : 8.0.1.7.5.0.0
    Hi,
    I've got an Oracle database upgraded from
    V8.0.5 to V8.1.7 which has a table having one long raw +
    normal columns. I was able to observe distinct memory
    leaks (approx 80K) when using ODBC interface calls (thro C++ code) that referenced a combination of normal & long raw columns in a select statement. However, this leak was not observed when only normal columns were present in the
    select statement. Is there any known restriction for using
    long raw columns with other columns? Or do long raw columns have a known memory leak problem thro ODBC?
    Thanks!
    Regards
    Sanchayan

    Did you ever get an answer on this issue?
    Thanks in advance

  • ORA-01013 with Oracle ODBC Driver 8.1.6.3

    I have a very strange problem occuring with the latest Oracle 8.1.6 Driver. I am able to set up the ODBC connection and it tests correctly. I'll open an Access 97 database and attempt to link to a table in an Oracle 8.1.6 through ODBC. I can connect to the database fine and it brings back a list of the available tables. However, when I select a table and attempt to link to it, I get the following error:
    ORA-01013: user requested cancel of current operation.
    This behavior also occurs if I try this operation through VB 6.0 code.
    Has anyone seen this before or better yet, have an answer as to why it is occurring?
    P.S., I'm using MDAC 2.51

    As an update, when I turn tracing on, here is the section of the log file that contains the error.
    MSACCESS d5-cb ENTER SQLStatisticsW
    HSTMT 01861988
    WCHAR * 0x00000000 [ -3] <empty string>
    SWORD -3
    WCHAR * 0x01862528 [ 5] "HQ"
    SWORD 5
    WCHAR * 0x01862548 [ -3] "AS"
    SWORD -3
    UWORD 1 <SQL_INDEX_ALL>
    UWORD 0 <SQL_QUICK>
    MSACCESS d5-cb EXIT SQLStatisticsW with return code -1 (SQL_ERROR)
    HSTMT 01861988
    WCHAR * 0x00000000 [ -3] <empty string>
    SWORD -3
    WCHAR * 0x01862528 [ 5] "HQ"
    SWORD 5
    WCHAR * 0x01862548 [ -3] "AS"
    SWORD -3
    UWORD 1 <SQL_INDEX_ALL>
    UWORD 0 <SQL_QUICK>
    DIAG [S1T00] [Oracle][ODBC][Ora]ORA-01013: user requested cancel of current operation
    (1013)

  • Probs with Oracle ODBC 8.1.6 Driver

    I can bind to Number Buffers and SQLDateTime Structures with the Microsoft Driver, However, I get Garbage for these when I use Oracle 8.1.6. Is this Driver ODBC 3.0 Compliant ?
    Tix

    All the 8.1.6 ODBC drivers are ODBC 3.51 compliant.
    Have youdownloaded the latest version of the 8.1.6 driver from OTN? If you're still experiencing problems, could you post a code snippet?
    Justin

  • I'm having issues with oracle ODBC and access 2007

    Hello all,
         I'm having an issue with using an ODBC connection with a pass-through query in access 2007. I have Oracle 9i installed and am on Windows 7 32 bit. This only seems to be effecting Windows 7 users and not XP users.
    The error in the SQL Log is this.
    CLDemoFE        1694-162c EXIT  SQLDriverConnectW  with return code -1 (SQL_ERROR)
      HDBC                0x00787430
      HWND                0x000501FC
      WCHAR *             0x6D3A8B34 [      -3] "******\ 0"
      SWORD                       -3
      WCHAR *             0x6D3A8B34
      SWORD                       -3
      SWORD *             0x00000000
      UWORD                        0 <SQL_DRIVER_NOPROMPT>
      DIAG [NA000] [Microsoft][ODBC driver for Oracle][Oracle]ORA-01019: unable to allocate memory in the user side (1019)
      DIAG [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed (0)
      DIAG [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed (0)
    I've been looking all over the internet and can't find an answer to the issue and decided to post it to see what other people thought.
    Thank you in advance.

    I've had exactly the same problem for weeks now.   When using Safari, it stalls, freezes, then starts working again.  I checked the console and exactly when it freezes.  I get the following:
    2015-02-25 5:51:59.000 PM kernel[0]: process com.apple.WebKit[405] caught causing excessive wakeups. Observed wakeups rate (per sec): 216; Maximum permitted wakeups rate (per sec): 150; Observation period: 300 seconds; Task lifetime number of wakeups: 849849
    and:
    2015-02-25 9:21:46.834 PM com.apple.launchd[1]: (com.apple.WebKit.WebContent.FC16A539-929A-43E5-91EB-34A5669B70FD[1265]) Could not terminate job: 3: No such process
    2015-02-25 9:21:46.834 PM com.apple.launchd[1]: (com.apple.WebKit.WebContent.FC16A539-929A-43E5-91EB-34A5669B70FD[1265]) Using fallback option to terminate job...
    2015-02-25 9:21:46.834 PM com.apple.launchd[1]: (com.apple.WebKit.WebContent.1004D4B5-112D-4D90-9779-B2BEFB570C7F[1262]) Could not terminate job: 3: No such process
    2015-02-25 9:21:46.834 PM com.apple.launchd[1]: (com.apple.WebKit.WebContent.1004D4B5-112D-4D90-9779-B2BEFB570C7F[1262]) Using fallback option to terminate job...
    2015-02-25 9:21:46.834 PM com.apple.launchd[1]: (com.apple.WebKit.WebContent.9F72A6A1-63F5-41B2-B02F-40D4CB0925A2[1261]) Could not terminate job: 3: No such process
    2015-02-25 9:21:46.834 PM com.apple.launchd[1]: (com.apple.WebKit.WebContent.9F72A6A1-63F5-41B2-B02F-40D4CB0925A2[1261]) Using fallback option to terminate job...
    2015-02-25 9:21:46.864 PM com.apple.launchd[1]: (com.apple.WebKit.Networking.8CDDD2D1-B6B6-4F09-B8DE-5C4A4E9F653E[1260]) Exited with code: 1
    2015-02-25 9:21:46.998 PM com.apple.launchd[1]: (com.apple.WebKit.Plugin.64.39152B03-68E5-463E-A6C0-A9734AF733A2[1268]) Exited with code: 1

  • Oracle ODBC and DAO extremely slow

    Hi
    I'm using Microsoft DAO 3.6 with an Oracle ODBC connection (version 9.2) in an VB6 application.
    Opening an updateable dynaset is extremely slow, I have measured the performance with Oracle ODBC, Microsoft Oracle ODBC and Microsoft SQL-Server ODBC as follows:
    Oracle ODBC: 1952 ms
    MS Oracle ODBC: 360 ms
    MS SQL-Server ODBC: 40 ms (connection to a MS SQL-Server)
    If I use the SQLpassthrough option the result is about 10 ms in all 3 cases, but the dynaset is readonly !
    The testing program is as follows:
    Option Explicit
    Private Declare Function timeGetTime Lib "winmm.dll" () As Long
    Private Sub Form_Load()
    Dim wsdata As DAO.Workspace
    Dim db As DAO.Database
    Dim dbconn As String
    Dim rs As DAO.Recordset
    Dim start As Long
    dbconn = "ODBC;DSN=AdhocitORA;UID=adhocit;PWD=adhocit;"
    Set wsdata = DBEngine.Workspaces(0)
    Set db = wsdata.OpenDatabase("", False, False, dbconn)
    start = timeGetTime
    Set rs = db.OpenRecordset("Select * from Afdeling", dbOpenDynaset)
    rs.MoveLast
    rs.MoveFirst
    rs.Close
    Set rs = Nothing
    MsgBox "Time " & timeGetTime - start
    End Sub
    Is there any setting in the Oracle ODBC, that need to be adjusted ??
    Erling

    Why are you doing a moveLast followed by a moveFirst? That's going to force Oracle to retrieve all the records in the recordset. If there are a lot of records, you'll probably see a benefit if you increase the prefetch in the Oracle ODBC DSN configuration.
    Justin

  • Logging on with IC ODBC 11.1.0.7.0 win-32

    Hello,
    I'm having trouble trying to connect to the 11.1.0.7.3 database with Oracle Instant Client 11.1.0.7.0 (Windows 32-bit). I have here Instant client basic, odbc and sqlplus.
    - I'm able to log on the database with sqlplus.
    - Logging on with Oracle ODBC driver is causing these error messages in the admin level client trace file:
    (2160) [06-AUG-2010 10:56:44:291] nttcni: trying to connect to socket 1512.
    (2160) [06-AUG-2010 10:57:05:304] ntt2err: entry
    (2160) [06-AUG-2010 10:57:05:304] ntt2err: soc 1512 error - operation=1, ntresnt[0]=505, ntresnt[1]=60, ntresnt[2]=0
    (2160) [06-AUG-2010 10:57:05:304] ntt2err: exit
    (2160) [06-AUG-2010 10:57:05:413] nttcni: exit
    (2160) [06-AUG-2010 10:57:05:413] nttcon: exit
    (2160) [06-AUG-2010 10:57:05:413] nserror: nsres: id=0, op=65, ns=12535, ns2=12560; nt[0]=505, nt[1]=60, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
    (2160) [06-AUG-2010 10:57:05:413] nsopen: unable to open transport
    (2160) [06-AUG-2010 10:57:05:413] snsbitts_ts: acquired the bit
    (2160) [06-AUG-2010 10:57:05:413] nsvntx_dei: entry
    (2160) [06-AUG-2010 10:57:05:413] nsvntx_dei: exit
    (2160) [06-AUG-2010 10:57:05:413] snsbitts_ts: acquired the bit
    (2160) [06-AUG-2010 10:57:05:413] nsmfr: 2096 bytes at 0x94a2420
    (2160) [06-AUG-2010 10:57:05:413] nsmfr: 996 bytes at 0x94a2030
    (2160) [06-AUG-2010 10:57:05:413] nladget: entry
    (2160) [06-AUG-2010 10:57:05:413] nladget: exit
    (2160) [06-AUG-2010 10:57:05:413] nsmfr: 212 bytes at 0x948f8e8
    (2160) [06-AUG-2010 10:57:05:413] nladtrm: entry
    (2160) [06-AUG-2010 10:57:05:413] nladtrm: exit
    (2160) [06-AUG-2010 10:57:05:413] nioqper: error from nscall
    (2160) [06-AUG-2010 10:57:05:413] nioqper: ns main err code: 12535
    (2160) [06-AUG-2010 10:57:05:413] nioqper: ns (2) err code: 12560
    (2160) [06-AUG-2010 10:57:05:413] nioqper: nt main err code: 505
    (2160) [06-AUG-2010 10:57:05:413] nioqper: nt (2) err code: 60
    (2160) [06-AUG-2010 10:57:05:413] nioqper: nt OS err code: 0
    (2160) [06-AUG-2010 10:57:05:413] niomapnserror: entry
    (2160) [06-AUG-2010 10:57:05:413] niqme: entry
    (2160) [06-AUG-2010 10:57:05:413] niqme: reporting NS-12535 error as ORA-12535
    (2160) [06-AUG-2010 10:57:05:413] niqme: exit
    (2160) [06-AUG-2010 10:57:05:413] niomapnserror: exit
    (2160) [06-AUG-2010 10:57:05:413] niotns: Couldn't connect, returning 12170
    (2160) [06-AUG-2010 10:57:05:413] nioqer: entry
    (2160) [06-AUG-2010 10:57:05:413] nioqce: entry
    (2160) [06-AUG-2010 10:57:05:413] nioqce: exit
    (2160) [06-AUG-2010 10:57:05:413] nioqer: exit
    (2160) [06-AUG-2010 10:57:05:413] niotns: exit
    (2160) [06-AUG-2010 10:57:05:413] nsbrfr: nsbfs at 0x94a1e30, data at 0x94a2d90.
    (2160) [06-AUG-2010 10:57:05:413] nigtrm: Count in the NI global area is now 1
    (2160) [06-AUG-2010 10:57:05:413] nigtrm: Count in the NL global area is now 1
    With Filemon one can see the correct sqora32.dll and tnsnames.ora are used. The directory of Instant Client 11.1.0.7.0 is in the beginning of the PATH.
    The machine is very slow. There are high timeout values:
    SQLNET.INBOUND_CONNECT_TIMEOUT = 300
    SQLNET.INBOUND_CONNECT_TIMEOUT_[LISTENERNAME] = 300
    SQLNET.SEND_TIMEOUT = 300
    SQLNET.RECV_TIMEOUT = 300
    The error message I get when trying to log on with the application (which has been used with Instant Client 10.1.0.5):
    IM006: [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed
    is the same which is thrown out when the tnsnames.ora or hosts file are not found.
    The error message remains the same when the host ip is used instead of the host name in the tnsnames.ora file. The host ip can be seen in the trace file.
    Comments will be much appreciated,

    Looks like this is some thing to do with MS ODBC driver manager related.
    couple of times I had faced similer issue, once my connection string was wrong and another time using user DSN instead of system DSN worked fine.
    Also, check @ http://support.microsoft.com/kb/822841
    Hope this helps!

  • ORACLE-ODBC and ACCESS2000

    Hi,
    I am working with Oracle-ODBC-Driver 8.01.61.00 (from 28.04.2000) and Access2000 under Windows2000 in a german-version.
    Access removes the comma by decimal-types.
    In Oracle I have 5.12 but access shows me 512 !!! :-((
    Who can help me ???
    This is very, very, very urgent !!!!
    Thanks !
    Hallo,
    Ich habe Oracle-ODBC-Treiber 8.01.61.00 vom 28.4.2000 dazu Access2000 und Windows2000 auf deutsch.
    Leider entfernt Access alle Dezimaltrenner bei Zahlen mit Dezimalstellen.
    In der Oracle steht 5,12 und Access zeigt mir 512 an !!!
    Wer kann helfen ??? Es ist dringend !!!
    Danke

    Note that the original poster asked the same question a day earlier in the thread "ACCESS and ODBC and Numeric's" which has received a couple of replies.
    Justin Cave
    ODBC Development

  • Oracle ODBC known issues/bugs

    Hi
    Where can I find a list of known issues with Oracle ODBC driver
    Thanks
    Inder

    Assuming you have a support contract, you can query the bug database from Metalink.
    Justin

  • Oracle ODBC, VB6, ADO, extended ascii

    Dim lcn as ADODB.Connection
    Dim sql as string
    Dim s as string
    ' assume connection done here
    s = chr(149) 'bullet
    'value field is varchar2(64)
    sql = "update dbo.text set value = '" & s & "'
    With Microsoft ODBC for Oracle this works fine.
    With Oracle ODBC 8.01.63:
    value = chr(191) upside down question mark.
    This appears to be the case for all ascii characters 128-256.
    Note that:
    sql = "update dbo.text set value = Chr(149)"
    produces the desired result.
    Any suggestions or ideas?

    one more line of code:
    lcn.execute (sql)
    of course.
    null

  • Oracle ODBC driver and TIMESTAMP with timezone

    Does anyone know if it is possible to return data from a "TIMESTAMP WITH TIMEZONE" column using the Oracle ODBC driver and an ADO Recordset?
    I am using the Oracle driver version 10.2.0.2 and TIMESTAMP fields work fine.
    I can call Recordset->Open() with a query like "SELECT * FROM TABLE" when the table contains a column of type timestamp with timezone but when I execute a statement to see if there are results as in
    if (!(srcRecsetPtr->BOF && srcRecsetPtr->EndOfFile))
    my application throws an unhandled exception and exits. The exception is not a COM exception and I'm not sure how to get back additional information if that's possible.
    The only information I've been able to find in searching TechNet and MetaLink is that a workaround is to wrap the columns in a TO_CHAR or TO_DATE conversion first but that's not a good solution for my problem since I am executing user specified SQL which may join multiple tables.
    I've found one other note that says the documentation should be corrected and that these fields are NOT supported period (Bug #4011640).
    I've experimented with the Bind Timestamp as Date option in the ODBC connection and with various ALTER SESSION settings to attempt to change the NLS_TIMESTAMP_TZ_FORMAT but I have been unable to get past the problem.
    Any ideas are greatly appreciated.
    Thanks,
    Troy

    Hi Justin
    Thanks for your help.
    I tried what you mentioned and I could connect myself via SQL*Plus without passing a password and a login, Extern authentification seems to work and my user seems to be right configurated.
    But he problem goes on via ODBC. When I test connection in the ODBC Data Source Administrator of Windows XP, test fails and seems to forbid connection without userID and password. When I try to connect via ODBC in my program the same problem appears : "Unable to connect SQLSTATE=28000 [Oracle][ODBC][ORA]Ora-01017: Invalid username/password;logon denied" I could not connect in this way.. What's wrong ?

Maybe you are looking for