Oracle 10g ODBC Driver Bug (10.1.0.3.1)

Using the ODBC driver version 10.1.0.3.1, there is a problem retrieving BLOB data in chunks using multiple calls to SQLGetData() when the datatype specified is SQL_CHAR.
Instead of returning (<BufferLength> - 1) characters (ANSI) along with a NULL, it returns exactly <BufferLength> characters (possibly with a NULL, I haven't double checked this) - pretty much the behavior you would expect if SQL_BINARY was specified. This has the affect of losing one character for each truncated chunk.
According to the ODBC spec, "If the length of character data (including the null-termination character) exceeds BufferLength, SQLGetData truncates the data to BufferLength less the length of a null-termination character. It then null-terminates the data. If the length of binary data exceeds the length of the data buffer, SQLGetData truncates it to BufferLength bytes."
The way I read this, as long as you specify the datatype as SQL_CHAR, the character data rules should be applied.
I tried to submit this as a TAR in Metalink, but it seems I don't have the TAR button. Is this the correct forum for this issue? Thanks.
Jon

AFAIK, Oracle doesn't officially monitor these forums and where/when they do it is a haphazard and volunteer basis (personal observations).
They do monitor the MetaLink forums so perhaps that was the cause of the confusion. At any rate the answer to use a forum to file a bug is wrong you do it through a support TAR and that can either be created from MetaLink (TARS button--missing for you) or via the phone.

Similar Messages

  • How to install Oracle 10g ODBC driver  for win 64 bit?

    I need to install Oracle 10g ODBC driver for win 64 bit, I donot know how to do that,
    where to find the driver....
    The driver 10.1.0.5.0 25-Apr-2006 2.1 MB isnot for 64 bits Win server 2003.

    Dear Sir,
    Yes, you can find the Driver here
    http://www.oracle.com/technology/software/tech/windows/odbc/index.html

  • Oracle 10g ODBC driver (ver 10.1.0.2) :  SQLConnect Hangs

    hi,
    We have a Win32 multithreaded app which uses the given 10g driver, but intermittently all the threads hang on SqlConnect.
    After running Adplus the call stack that we get , always point to oranls10. This is the call stack from the last time the server hanged when it tried to do a SQLConnect.The call stack generated by adplus is given below:
    ChildEBP RetAddr Args to Child
    WARNING: Stack unwind information not available. Following frames may be wrong.
    0135f088 612a1833 003ee494 00001399 00000002 ORANLS10!lmsapsc+0x78
    0135f2bc 612a176e 003ee494 00000002 00001399 ORANLS10!lmsagbcmt+0x103
    0135f2f0 612a1722 003ee494 00001399 00000000 ORANLS10!lmsagbcmt+0x3e
    0135f31c 031990f4 003ee494 00001399 00000000 ORANLS10!lmsagbf+0x22
    0135f334 036e0bcf 003ee494 00001399 00000000 oci!lmsagbf+0x24
    0135f360 036bed2f 02675e4c 00000000 00001399 sqora32!SQLTablesW+0x372df
    0135f3b8 036b61c3 02675e4c 0268f418 0267682c sqora32!SQLTablesW+0x1543f
    0135f4f0 036a3b2c 0268f334 02675bcc 00000006 sqora32!SQLTablesW+0xc8d3
    0135f524 4bf8e667 0268f334 0135f65c 00000006 sqora32!SQLConnectW+0xfc
    0135f554 4bf8efed 00000001 0135f65c 00000006 odbc32!SQLInternalConnectW+0xfa
    0135f6a4 4bfa1e5e 00781b28 00782628 00000006 odbc32!SQLConnectW+0x250
    0135f6e0 00397454 00781b28 01d7fffd fffffffd odbc32!SQLConnect+0x140
    01360068 016dc13a 00000005 0136f9d0 0136fa14 libsas!CM_dbopen+0x341
    Since we have been facing this issue for a long time, we decided on making use of the SQL_ATTR_LOGIN_TIMEOUT value before we issue a SQLConnect, but that driver doesn't seem to like that option even though it says its 3.5 compliant
    lRetcode = SQLSetConnectAttr( OD_DBDBC(pCtx),          SQL_ATTR_LOGIN_TIMEOUT,(SQLUINTEGER )10,     SQL_IS_UINTEGER );
    Setup details
    Oracle 10g Release 1 Enterprise database server
    App has been built using VC++6 and is running on Win2003 Enterprise Server
    Our analysis has shows that the network was fine as other apps were able to connect to the database at that time
    Question
    1. Is this a Driver related issue? Because when we were using Merant ODBC driver, everything seems to be working fine!
    2. Is there some patch that is out there which might resolve this issue?
    If you all folks could help or provide some kind of advice , i would really appreciate that.
    regards,
    GG

    Well, do you have a code example that causes it? Don't take this the wrong way, but I've seen more than a few badly written multi-threaded applications which do nothing but corrupt memory and use handles in non-threadsafe ways; all of which cause issues which rear their ugly heads in various odd ways. It may also be an Oracle bug, but comparing two different drivers does not mean it's not your application causing the crash as well.
    If you could provide a quick little code sample which causes the issue, I'll take a look at it for you.

  • Oracle 10g ODBC driver with Windows 7 32 bit connecting to Excel

    Hi Everyone,
    I'm having an issue connecting to our oracle 10g database (64 bit system) from a 32 bit windows 7 installation running excel 2010/2007 using odbc drivers. Our excel spreadsheets worked without issue in windows xp.
    In windows 7 I have been able to install the odbc driver via the following method:
    1. Download the oracle 'basic' client and oracle 'odbc' client from www.oracle.com and extract the contents:
    instantclient-basic-win32-10.2.0.3-20061115
    instantclient-odbc-win32-10.2.0.3-20061115
    2. Create a folder 'oracle' and place the instantclient_10_2 folder inside.
    3. Ensure all the basic and odbc files reside in this folder.
    4. Create a 'network' folder within instantclient_10_2
    5. Create an 'admin' folder within 'network'
    6. Create sqlnet.ora and tnsnames.ora files within the 'admin' folder:
    7. Run 'obdc_install' within the instantclient_10_2 folder
    8. Download and run the oracle odbc driver exe file from www.oracle.com (ORA10203.exe)
    9. Go to Control Panel -> Administrative Tools -> Data Sources and create a new System DN
    This allows excel spreadsheets connecting ONLY to oracle to function.
    Unfortunately some of our spreadsheets connect to both a MySQL database as well as oracle. Spreadsheets connecting only to MySQL also function correctly, however, as soon as the vb associated with a spreadsheet includes a mysql call followed by an oracle call the spreadsheets fail. In Excel 2007 excel crashes completely everytime. In Excel 2010 the mysql data is generated, then when the script hits to oracle odbc connection there is a long pause, the oracle ODBC driver connect pops up requesting a username/password (this didn't happen in xp), then the data source selection pops up, then the username/password connect screen pops up again, and finally it fails with a runtime error '1004' General ODBC error.
    If you look at the VB script it's failing at the Refresh BackgroundQuery statement in the ODBC connection block:
    With Worksheets("Oracle1").QueryTables.Add(Connection:= _
    "ODBC;DSN=Oracle_ODBC;UID=user;PWD=password;SERVER=ORACLE_LINUX;", _
    Destination:=Worksheets("Oracle1").Range("A1"))
    .CommandText = strSql
    .Name = "Oracle1_data"
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlOverwriteCells
    .SavePassword = True
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .PreserveColumnInfo = True
    .Refresh BackgroundQuery:=False
    End With
    Does anyone know how to get around this? It's very important!!
    Also if you try to edit the oracle ODBC connections in Control Panels -> Administrative Tools -> Data Sources, ODBC crashes 95% of the time.
    Advice greatly appreciated!!

    Well, here's what I'd check anyway..
    1) get Process Explorer from http://sysinternals.com
    2) make a mysql connection, get a list of dll's loaded (include the location and version columns in the lower pane output)
    3) close that, then make an ora odbc connection, get a list of dlls.
    4) close that, then make a mysql connection followed by an ora odbc connection, get a list of dlls
    5) compare the lists of loaded dlls. In particular, the difference between #3 and #4, is there a dll dependency that gets loaded by oracle's odbc that comes from a different location when you've opened a mysql connection first?
    May or may not help, but might turn up a difference to help point you in a direction.
    Greg

  • Oracle 10g ODBC Driver Missing in Control Panel

    I have installed the Oracle 10g Client in a computer running Windows XP but the "Oracle in OraClient10g_client1" ODBC driver in the Drivers tab of the Control Panel/Administrative Tools/Data Sources (ODBC) form is missing. I know the Oracle ODBC driver is currently installed because:
    1. I can connect to the database using DSN-less connection. "Driver={Oracle in OraClient10g_client1}; DBQ=[TNSname];UID=[username];PWD=[password]"
    2. The HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers show an entry for "Oracle in OraClient10g_home1".
    Any help would be appreciated. Thank you.

    I don't know if you've got an answer yet or not, but I had the same problem when I installed Oracle 10 client. There is a similar issue on the Oracle forum (Re: ODBC Driver Install Problem. Basically, what was happening is a line had been entered in the ODBC Drivers file that contains "@=". Anything following that line is NOT displayed in the ODBC Admin list.
    To fix this problem, open Regedit and export the "HKLM\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers" key to a file. Edit the file to remove the line "@=" and save the file. Delete the registry key, and merge in your updated file.

  • Oracle 10g ODBC for setup

    i want to use Oracle database client 10g ODBC driver but i don't have it.
    please help me,,,i want the driver for setup.

    This was resolved in the latest 10g ODBC driver (10.1.0.3.1)
    Jon

  • How to install Oracle Lite ODBC driver without connecting the mobile server

    My Oracle Lite version is 10g R3.
    I am using branch office version application.
    I wanted to connect oracle client database(.odb file) via Lite DSN in a windows XP machine without installing the client in that device.
    Some of my users wanted to access the client database from backend which requires a DSN entry in that device.Oracle Lite ODBC gets registered in the device only when we do a setup from the mobile server or if Oracle 10g Lite MDK is installed.
    I do not want either of this to be done in my user PC. I wanted a ODBC utility which will register oracle Lite ODBC Driver (Normal & Cleint) in the user PC so that i can manually create and configure the DSN.
    Does anyone have a solution for this?
    Regards,
    Ashok Kumar.G

    Dear Sir,
    Yes, you can find the Driver here
    http://www.oracle.com/technology/software/tech/windows/odbc/index.html

  • Problem setting up DSN for 10g ODBC driver

    Hello,
    I am simply trying to install an ODBC driver for 10g. To accomplish this, I first downloaded the odbc driver for 10g 10.2.0.2.0. The Readme notes said that I need to install the odbc driver using the Oracle Universal Installer. So I got a copy of just the OUI from our DBA. I installed the OUI 10.2. Using the installer, I installed the 10.2.0.2.0 odbc driver. The Readme notes said to look for the file "products.jar", which was not available, but "products.xml" was, so I used "products.xml", and the driver installed successfully.
    The next step was to set up an ODBC DSN for this driver. When I attempted to do this, the Microsoft ODBC Administrator threw this message: The setup routines for the Oracle in DEFAULT_HOME ODBC driver could not be loaded due to system error code 127, followed by Could not load the setup of translator library.
    Other threads suggested that I copy the DLLs mfc71.dll, msvcrt.dll, and msvcr71.dll from my C:\Windows\System32 directory to the directory where I installed the odbc driver (C:\orant\BIN) and to ensure that this directory path was defined under the PATH environmental variable. I followed all these instructions but to no avail - I am still having the same problem. PLEASE HELP!!! Thanks in advance!!

    Hi,
    >>could not be loaded due to system error code 127
    Did you try install it on other machine ? Maybe this current machine has a DLL versions problems ...
    Cheers

  • Use of parameter sets with prepared INSERTS via Oracle's ODBC driver 8.1.6.4

    Oracles ODBC driver, version 8.1.6.4, allows for driver configuration of three different batch auto commit modes. If I select COMMIT ALL SUCCESSFUL STATEMENTS and cause my app to execute a prepared and parameterized INSERT statement that makes use of parameter value sets, all records up to the first record that causes an error are committed. What is happening? The driver returns only one diagnostic record, with SQLGetDiagField returning the index of the bad record through the [SQL_DIAG_ROW_COUNT] field. Regardless of whether SQLExecute executed successfully or not, the [SQL_ATTR_PARAM_OPERATION_PTR]/ [SQL_ATTR_PARAM_STATUS_PTR] buffers are not initialized by the driver. Even more so, the drive returns SQL_PARC_NO_BATCH for SQLGetInfo when [SQL_PARAM_ARRAY_ROW_COUNTS] is passed. Does anyone know if the driver fully or partially or does not support use of parameter value sets. If it is only partial implementation, ignoring the parameter operation and status buffers, in my opinion, greatly diminishes any real use of parameter value sets. Does anyone known if the above problems disappear with use of Oracles ODBC driver, version 8.1.7.3.0?
    All help is greatly appreciated,
    Chris Simms
    null

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Justin Cave ([email protected]):
    What version of the database do you have on the back end?
    Justin<HR></BLOCKQUOTE>
    Oracle8i version 8.1.6. Looking at the specs that come with the ODBC driver upgrades, version 8.1.7.3.0 [which requires Oracle*i version 8.1.7] and 8.1.6.4, it seems that similar enhancements/fixes were made to both. I honestly do not know if what I am attempting is possible with either of the ODBC drivers. I really would prefer not to have to drop down to programming using OCI.
    Chris
    null

  • Sudden failure of 32-bit Oracle 11g ODBC driver in 64-Bit Win7 box

    I had a working ODBC connection to an Oracle DB using the 32-bit 11g ODBC driver. Suddenly I was unable to connect, getting the error:
    Testing Connection
    Unable to connect
    SQLState=S1000
    [Oracle][ODBC][Ora]ORA-00604: error occurred at recursive SQL level 1
    ORA-12899: value too large for column "SYSTEM"."LOGON_AUDIT"."PROCESS" (actual: 13, maximum: 12)
    ORA-06512: at line 51
    OK
    For a strange twist, the connection works perfectly with the workstation in Safe Mode. I've tried disabling Symantec Endpoint Protection, and adjusting the Firewall, but so far no dice. Any advice I can get will be appreciated!
    Thanks
    Keith

    How do you get the 32bit client to communicate with the 64bit Oracle instance on the same windows box? After installing the 64 bit db and client (on a developer desktop), I installed the 32 bit client to a different oracle home. I could not get it to connect to the listener - what am I doing wrong? Should I reinstall it to the 64bit home - I'm afraid that'll kill everything though.
    Also, I think I'm correct in this, but not sure: any 32bit app must use the 32bit client on the 64bit box. MS Access needs 32bit ODBC, which needs 32bit client, etc.
    Thx,
    Jeff

  • ORA-12154 Windows 7 32bit ORACLE 11g ODBC Driver CONNECT

    Hi All,
    I'm having problems connecting to extenal database using Oracle ODBC driver for Windows 7 32bit  .
    I have downloaded the instantclient odbc nt 11.2.0.4zip drivers for 32-bit and unpacked it
    and run the installer and choose the default location ie c:\app\product\11.2.0\client_1
    2.I done all the necessary setting ie set the Path and creating new user variable for tns admin
    in the system environment and modified the hostfile on etc sys32 and copied both tsnamesn and sqlnet
    to Network\Admin file
    3.I then started the Data Sources (ODBC) manager, configured the driver and tested the
    configuration then I got a testing connection error SQLstate= 08004... ORA-12154 TNS couldn't connect.
    could you please help. Thanks in advance.

    I couldn't understand why you need two different tnsnames files. Are they resides in two different directories with filename "tnsnames.ora"? In that case, you need to set the TNS_ADMIN appropriately.
    If you haven't named tnsnames files as "tnsnames.ora", then Oracle ODBC driver may not able to access it.
    Also if TNS_ADMIN env variable is not pointed to the correct directory where tnsnames.ora file resides, then Oracle ODBC driver won't be able to access it.
    In any case, if Oracle ODBC driver unable to access the tnsnames.ora and there is no connection string value stored in the Windows registry, then it throws ORA-12154 error.
    Thanks,
    Senthil

  • Problem with Java 5 and Oracle 10g JDBC driver

    Hi All,
    Currently we upgrade our web application to Java 5 and Oracle 10.2 JDBC driver. And we encountered a bug, when the user entered the information through UI and data didn't store into database (Oracle 9i). The problem is that this bug is not happend so often maybe once a day and this did not happen before we upgraded to Java 5 and Oracle 10.2 JDBC driver. Does anyone encounter the same problem ? Is this Java 5 problem or Oracle JDBC driver problem ?
    Thanks,

    sounds like a database problem...
    Are you using a driver version that's supported for your database engine?
    What else did you change? We once ran into a major bug in our application that had for 5 years been masked by performance problems in our hardware and infrastructure.
    Once those were resolved the bug showed itself and caused tens of thousands of records to be erroneously inserted into our database every day.
    It's certainly NOT a problem with your JVM (if it's a decent one, like the Sun implementation).
    So it's either your database, your driver, your network (dropping packets???), or your application.
    The upgrade may just have exposed something that was already there.

  • Oracle thin JDBC driver BUG-2285052, how to solve it ?

    Hi, use ResultSet.getString to get a nchar type String from databaase, it will return the proper value.
    eg, a 254 size column , it will return more char as needed !!
    please check next from jdbc readme file. anyone can give me a temp solution ?
    BUG-2285052 (since 9.2.0.1)
    Extra space and null characters are returned by ResultSet.getString() and Scrollable ResultSet getString() for NCHAR column when the database national character set is UTF8. This behavior occurs only with JDBC THIN driver.

    Dear Michael,
    thx I found a lot of useful properties via the links you provided, but not those in question.
    michael_obrien wrote:
    For timeouts, you may need to use a hint directly on the entity though
    http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_(ELUG)#How_to_Use_EclipseLink_JPA_Query_Hints
    http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_(ELUG)#Timeout
    I think this refers to "Statement.setQueryTimeout".
    The properties I'm looking for focus on the connection and the network beneath.
    Are there other undocumented ;) possibilities?
    Kind Regards,
    daniela

  • How to register 10g ODBC driver list in the Create New Data Source window

    Hi
    I've checked the dll for the odbc is in the correct home path. However, i don't see the list of the driver when i try to create a new data source. Is there a way besides reinstall the client again.
    Thanks
    Rgds
    Ung

    Hi Joe,
    According to your description, after you run C:\Windows\SysWOW64\odbcad32.exe, Access driver is not displayed when you expand HKEY_LOCAL_MACHINE>ODBC>ODBCINST.INI node.
    The issue is caused by wrong path of odbccad32, please make sure that you are using Administrator account or you have administrative privileges, then refer to the following steps:
    Go to Control Panel.
    Click Administrative Tools.
    Right-click Data Sources(ODBC) to open Properties dialog box.
    In Target text box, type  %windir%\syswow64\odbcad32.exe             
    In Start in text box, type %windir%\syswow64, then click OK to  save the settings.
    If you have any more questions, please feel free to ask.
    Thanks,
    Wendy Fu

  • Oracle 10g odbc

    I have installed oracle 10 g (64bit) on win server 2003 (64bit).installation was successful.
    but we connect from vb than it fetch error oracle provider not found/odbc provider not available.
    what solution of this problem please suggest.
    Thanks

    What is the exact error message? Have you tried a test connection with ODBC? Was it successful?

Maybe you are looking for

  • JMS Messaging Bridge WLS8.1

              Hello All,           I am trying to hook up 2 Queues as source and target destinations for the WLS8.1           Messaging Bridge[MB] functionality.           So when I send a message to Q1[source destination], the MB forwards the message   

  • Error message: "We have detected an incompatible display driver..."

    I have loaded PE12 on my Sony Vaio laptop running Windows 8.0 and keep getting this error message... "We have detected an incompatible display driver. To get a better and faster playback performance, please update your display driver." I have an Inte

  • Via_rhine dirver not working properly

    I got an VIA PC-1 PC2500 board  in order to build a DSL router. http://www.via.com.tw/en/initiatives/em - /index.jsp However, the integrated ethernet seems not to work.(with the latest 2007.08-2 FTP install ISO) #lspci -nn |grep Eth 00:12.0 Ethernet

  • Problem with starting my account on mac

    I installed mac os lion few weeks ago and all was working fine until yesterday. the account i use to log on has become very slow and everytime i log in, the desktop icons take ages to load up and spotlight starts indexing. i created a new account, bu

  • Job Prostect for Fresher in ABAP

    Hi All, Please let me know what is the job prospect for freshers in ABAP as I am going through the certification for ABAP from Siemens. I have been going through the forums and is it really hard for a fresher to fetch a job in SAP market. Thanks in A