Microsoft ODBC Error

Hello,
I'm testing the following code that contects to an Access Database
import java.sql.*;
public class AccessTest
public static void main(String[] args)
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String dataSourceName = "scan";
String dbURL = "jdbc:odbc:" + dataSourceName;
Connection con = DriverManager.getConnection(dbURL, "","");
Statement s = con.createStatement
ResultSet.TYPE_SCROLL_SENSITIVE,
          ResultSet.CONCUR_UPDATABLE);
s.execute("select * from test");
ResultSet rs = s.getResultSet();
if (rs != null) // if rs == null, then there is no ResultSet to view
while ( rs.next() ) // this will step through our data row-by-row
/* the next line will get the first column in our current row's ResultSet
as a String ( getString( columnNumber) ) and output it to the screen */
// System.out.println(rs.getString("f_name")+"\t\t");
rs.updateString("l_name","Welcomer ");
                    rs.updateRow();
// System.out.println("Last Name: "+rs.getString(2));
System.out.println("Number: "+rs.getString(3));
     System.out.println("Age: "+rs.getString(4));
     //System.out.println("Date: "+rs.getDate(5));
     //Date tmp = rs.getDate(5);
     System.out.println();
s.close(); // close the Statement to let the database know we're done with it
con.close(); // close the Connection to let the database know we're done with it
catch (Exception err) {
System.out.println("ERROR: " + err);
the code that is commented out, was done so as I tried to debug this. What I'm trying to do is update the field l_name in a record. Yes I know using SQL update will do it, but I need to it this way for my application that I'm designing. The error I get is
java.sql.SQLException :[Microsoft][ODBC Microsoft Access Driver] Error in row.
the table in question only has 3 entries. The last name is updated for the first only, thus the error is coming up before the result set is moved by one. Please advise.
Thanks in advance

Access does support updatable queries, but sometimes it seems to choke on the string version of the column designator parameter.
Instead of:
rs.updateString("l_name","Welcomer ");
...try the integer parameter version instead.
Another thing to try is providing the column names instead of just a select * from. Many complex SQL statements will fail when you use 'select * from' because it looks into the column list to find the column names to use. '*', while understood by the database, will probably not provide much of a list of column names for the driver to use in your call to rs.updateString("l_name","Welcomer ");
Just some ideas, I am not sure if they are your answer though.

Similar Messages

  • Unable to Connect, ORA 12154, Setup routine for Microsoft ODBC errors

    Hi all,
    I have a Windows 7 Enterprise 64bit SP1 system and I wanted to be able to connect to an oracle database server. However, I am facing a problem with ODBC configuration.
    I have currently installed both below in ... product\11.2.0\client_1 folder:
    1. Oracle Database 11g Release 2 Client (11.2.0.1.0) for Microsoft Windows (x64) - http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
    2. 64-bit Oracle Data Access Components (ODAC) - http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
    I launched ODBC Data Source Administrator and added a User DSN but resulted to two errors:
    1. The setup routines for the Microsoft ODBC for oracle ODBC driver could not be found. Please reintall the driver.
    2. The specified DSN contains an architecture mismatch between the driver and application.
    On top of that, if I go to System DSN tab, and tried to test the connection it give me an error:
    1. Unable to connect SQLState = 08004 [Oracle][ODBC][Ora]ORA-12154: TNS: Could not resolved the identifier specified.
    Can someone please guide me through this? Thanks in advance!
    Edited by: VTech on Feb 26, 2013 2:13 PM

    VTech wrote:
    Hi all,
    I have a Windows 7 Enterprise 64bit SP1 system and I wanted to be able to connect to an oracle database server. However, I am facing a problem with ODBC configuration.
    I have currently installed both below in ... product\11.2.0\client_1 folder:
    1. Oracle Database 11g Release 2 Client (11.2.0.1.0) for Microsoft Windows (x64) - http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
    2. 64-bit Oracle Data Access Components (ODAC) - http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html
    You only need one of these (the second one should suffice).
    I launched ODBC Data Source Administrator and added a User DSN but resulted to two errors:
    1. The setup routines for the Microsoft ODBC for oracle ODBC driver could not be found. Please reintall the driver."Microsoft ODBC for Oracle" is a different provider than "Oracle ODBC". Make sure you're not using the Microsoft one.
    2. The specified DSN contains an architecture mismatch between the driver and application.This can happen if you're mixing 32-bit and 64-bit. There's two ODBC control panels in Windows 7:
    - the 64 bit one is the one in control panel
    - the 32 bit one is c:\windows\syswow64\odbcad32.exe
    Since you're using a 64 bit Oracle driver, you should be using the 64 bit ODBC administrator, and 64 bit applications. If you're trying to use this ODBC connection with a 32 bit application, you'll need to use the 32 bit ODBC (and the 32 bit Oracle driver).
    On top of that, if I go to System DSN tab, and tried to test the connection it give me an error:
    1. Unable to connect SQLState = 08004 [Oracle][ODBC][Ora]ORA-12154: TNS: Could not resolved the identifier specified.Well that actually means it's loading Oracle correctly, so that's something. You need to add an entry for the server you want to connect to into tnsnames.ora, located in the \network\admin folder inside of your Oracle client installation. Since it sounds like someone else set up the server you want to connect to, your DBA should be able to provide the information that goes into the file.

  • Oracle - Microsoft  Odbc Error while installing UPK on Server 2008 64 bit..

    upk VERSION: 3.5.1
    os: windows 2008 server 64 bit
    oracle: 11g.1 for 64 bit
    i have created a user with sysdba and other privileges and i am able to login into database as well.
    but when i try to run the UPK ( server) installer and select the ORacle database i am getting following error after entering user name and password.
    Error:
    ====
    An error occur while trying to connect to the server"
    MSDAORA: there was an error logging into oracle
    Error: oracle client and networking components were not found.
    {Microsoft ODBC for Oracle} there was an error logging into oracle .
    error: Microsoft ODBC Driver manager Driver SQLALLOCHandle on SQL_Handle_Env_failed(0).
    Any help would be highly appreciate.
    thanks.

    Hi,
    Have you found a solution for this problem yet?
    I am facing the same issue.
    I would be very gratefull for a solution to this problem.
    Edited by: [email protected] on 11.06.2010 03:43

  • ODBC instant client Microsoft ODBC error

    I have successfully installed instant client.
    I have added ODBC connections in Microsodft ODBC Administrator.
    Issue is after I setup or delete one - and try to do something with the second one. The ODBC manager errors out. I get back into the ODBC Administrator and it will let me add/delete something. It seems like 1 task then out.

    For the record, there seem to be two bugs logged with Oracle related to this issue.
    The missing dll problem is bug 4696660.
    The recommended solution is to find copies of MSVCR71.DLL and MFC71.DLL and put them into the instantclient directory (which itself will be in the PATH)
    The ODBC 1114 failure seems something that has been broken in the 10.2 version of instantclient. Bug 5233492 reports a very similar problem and identifies that the problem does not exist in the 10.1 instantclient. I've tested this myself and verified that to be the case.
    It seems at the moment if you want to use InstantClient and ODBC on Windows, you need to use the 10.1 version of Instantclient.

  • ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified in windows server 2008 r2

    ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified in windows server 2008 r2.I made a application in asp.net c#.I am using ODBC connection.When I deployed my application in windows server2008 r2.There
    is no Microsoft ODBC driver shown in ODBC Data source administrator.Then I go to the C:\Windows\SysWOW64 and open  Odbcad32.exe and add Microsoft ODBC2 driver for Oracle and when I run my application I got following error
    ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
    I am using follwoing string
     <connectionStrings>
    <add name="theconnetion" connectionString="DSN=abdb;UID=abc;PWD=xyz"/>
     </connectionStrings>
    Guide me What I do?

    Did you add a System DSN or a User DSN? If you added a User DSN from your own login, the asp.net application will not be able to use it unless its application Pool in IIS is configured to run under the same credentials that you used for creating
    the DSN. It's better if you add a System DSN.
    Also, be careful to ensure that you are using a 64 bit DSN, unless you configure the application to run in 32 bits. If the 64 bit application attempts to use the 32 bit driver you get the same error message "Data source name not found and no default
    driver specified". See this KB article:
    http://support.microsoft.com/kb/942976/en-us

  • Reg : I am getting an error while Using MicroSoft ODBC For Oracle Driver

    I am Using MicroSoft ODBC For Oracle Driver  for JDBC. Why i am using this driver is i could not able to get  the arabic content if i use the other driver  .I Right now i cannot change the NLS Lang because its a production server    also it has around 300 gb of data  and i can not take risk now by changing the NLS lang.. coming to the below error .i could able to access my data up to 4 Hours after that i am getting this error.If i restart my tomcat i can use my application  one more 4 hrs  .Please get back to me if u have any solution.Its very very helpful to me......+*
    [java.sql.SQLException] [ Microsoft ODBC for Oracle ]
    at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
    at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
    at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:3073)
    at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:3
    23)
    at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
    at com.iton.eoffice.DatabaseBean.connecteOfficeMoEnq(DatabaseBean.java:4
    60)
    at org.apache.jsp.MhewProfilesearchMoEnq_jsp._jspService(MhewProfilesear
    chMoEnq_jsp.java:434)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
    .java:384)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
    20)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
    icationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
    ilterChain.java:206)
    at com.iton.eoffice.tree.CharacterEncodingFilter.doFilter(CharacterEncod
    ingFilter.java:63)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
    icationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
    ilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
    alve.java:228)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
    alve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
    ava:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
    ava:104)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
    ve.java:109)
    at org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.j
    ava:347)
    at org.apache.catalina.ha.session.JvmRouteBinderValve.invoke(JvmRouteBin
    derValve.java:209)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
    a:212)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
    :844)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
    ss(Http11Protocol.java:634)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
    5)
    at java.lang.Thread.run(Thread.java:619)
    ------------1234-----------
    java.lang.NullPointerException
    at com.iton.eoffice.DatabaseBean.getSQLRows(DatabaseBean.java:764)
    at org.apache.jsp.MhewProfilesearchMoEnq_jsp._jspService(MhewProfilesear
    chMoEnq_jsp.java:435)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
    .java:384)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
    20)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
    icationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
    ilterChain.java:206)
    at com.iton.eoffice.tree.CharacterEncodingFilter.doFilter(CharacterEncod
    ingFilter.java:63)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by sreenivas navuluri:
    Oracle(tm)Client and networking components not found. These components are supplied by Oracle Corporation and part of Oracle Version 7.2 or greater Client software installation. You will be unable to use this driver until these components have been installed . This error occurs while selecting the Microsoft Odbc for Oracle driver from the ODBC in control panel. Pls suggest<HR></BLOCKQUOTE>
    null

  • ERROR reports.reportdefinition : com.crystaldecisions.reports.queryengine.driverImpl.m: JDBC Error: [Microsoft][ODBC Driver Manager] Invalid string or buffer length

    I have developed Java web application which uses Crystal Report 2013 , java 1.6 , Windows 32 bit System, All the reports are loading fine in the Following environment
    Development Environment
    Windows7 Professional Service pack 1 -32 bit
    Java - 1.6
    Internet Explorer 11
    Oracle Client 10g 32 bit ODBC driver
    Testing Environment
    Windows Server 2008 R2 Enterprise - 64 bit
    java 1.6
    Internet Explorer 9
    Oracle Client 11g 62 bit ODBC driver
    While loading reports in the 64 bit server the error occurs
    ERROR reports.reportdefinition :  com.crystaldecisions.reports.queryengine.driverImpl.m: JDBC Error: [Microsoft][ODBC Driver Manager] Invalid string or buffer length
    ERROR dataengine.datasource : Failed to read next recurring database record: database row set error.
    com.crystaldecisions.reports.reportdefinition.datainterface.j: JDBC Error: [Microsoft][ODBC Driver Manager] Invalid string or buffer length
        at com.crystaldecisions.reports.reportdefinition.datainterface.q.a(Unknown Source)
        at com.crystaldecisions.reports.dataengine.n.m(Unknown Source)
        at com.crystaldecisions.reports.dataengine.n.l(Unknown Source)
        at com.crystaldecisions.reports.dataengine.n.bn(Unknown Source)
        at com.crystaldecisions.reports.dataengine.n.bp(Unknown Source)
        at com.crystaldecisions.reports.dataengine.n.else(Unknown Source)
        at com.crystaldecisions.reports.dataengine.s.a(Unknown Source)
        at com.crystaldecisions.reports.dataengine.bk.a(Unknown Source)
        at com.crystaldecisions.reports.dataengine.bk.ab(Unknown Source)
        at com.crystaldecisions.reports.dataengine.bk.<init>(Unknown Source)
        at com.crystaldecisions.reports.dataengine.bk.if(Unknown Source)
        at com.crystaldecisions.reports.dataengine.bk.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bv.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bv.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.be.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.be.h(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.i.h(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.be.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bt.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bv.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bv.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bf.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.cd.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.cd.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.b3.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bt.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.cd.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.cd.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.cd.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.ca.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.a9.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.e.m.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.cd.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.cd.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.b3.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.e.m.for(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.objectformatter.bt.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.e.p.l(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.e.p.void(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.e.p.l(Unknown Source)
        at com.crystaldecisions.reports.formatter.formatter.e.p.aE(Unknown Source)
        at com.crystaldecisions.reports.formatter.a.c.a(Unknown Source)
        at com.crystaldecisions.reports.formatter.a.c.if(Unknown Source)
        at com.crystaldecisions.reports.formatter.a.c.a(Unknown Source)
        at com.businessobjects.reports.sdk.b.b.int(Unknown Source)
        at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(Unknown Source)
        at com.crystaldecisions.proxy.remoteagent.x.a(Unknown Source)
        at com.crystaldecisions.proxy.remoteagent.q.a(Unknown Source)
        at com.crystaldecisions.sdk.occa.report.application.dd.a(Unknown Source)
        at com.crystaldecisions.sdk.occa.report.application.ReportSource.a(Unknown Source)
        at com.crystaldecisions.sdk.occa.report.application.ReportSource.a(Unknown Source)
        at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
        at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(Unknown Source)
        at com.crystaldecisions.reports.sdk.PrintOutputController.export(Unknown Source)
        at com.erm.controller.ALMReportsController.queryDll(ALMReportsController.java:1681)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.springframework.web.servlet.mvc.multiaction.MultiActionController.invokeNamedMethod(MultiActionController.java:471)
        at org.springframework.web.servlet.mvc.multiaction.MultiActionController.handleRequestInternal(MultiActionController.java:408)
        at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:838)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.erm.authentication.HttpSecurityFilter.doFilter(HttpSecurityFilter.java:658)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Unknown Source)
    Caused by: com.crystaldecisions.reports.queryengine.driverImpl.m: JDBC Error: [Microsoft][ODBC Driver Manager] Invalid string or buffer length
        at com.crystaldecisions.reports.queryengine.driverImpl.o.if(Unknown Source)
        at com.crystaldecisions.reports.queryengine.ap.if(Unknown Source)
        at com.crystaldecisions.reports.queryengine.l.bN(Unknown Source)
        at com.crystaldecisions.reports.queryengine.ap.eg(Unknown Source)
        at com.crystaldecisions.reports.queryengine.ap.e(Unknown Source)
        at com.crystaldecisions.reports.queryengine.b2.f(Unknown Source)
        at com.crystaldecisions.reports.queryengine.b2.dy(Unknown Source)
        ... 89 more
    Caused by: java.sql.SQLException: [Microsoft][ODBC Driver Manager] Invalid string or buffer length
        at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbcResultSet.getBigDecimal(Unknown Source)

    A few things to note:
    1) Crystal Report 2013 doe snot install any SDK. Thus the assumption is that you are using CR from teh following link:
    SAP BusinessObjects - SAP Crystal Reports, Version For Eclipse Download
    2) Since you are using a 64 bit connection (Oracle Client 11g 62 bit ODBC driver) you will have to make sure you are using 64 bit JVM. Otherwise, follow Dell's advice and use a 32 bit ODBC datasource.
    3) On one test you are using Oracle Client 10g 32 bit ODBC driver and the other you are using Oracle Client 11g 64 bit ODBC driver. You might want to see if you can run your app using Client 11g 32 bit ODBC driver.
    - Ludek
    Senior Support Engineer AGS Product Support, Global Support Center Canada

  • Connection failed: SQLState:'01000' SQL Server Error:67 [Microsoft]ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()). Connection failed: SQLState:'08001' SQL Server Error:17 [Microsoft]ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist o

    Help,
    setup a new sql server 2012 on a windows 2012r2 server to replace old sql server 2005 on an old windows server 2003 machine.  When i test the ODBC connection locally on the server it works fine, however when i try to connect via windows 7 client machine
    i get the following error:
    Connection failed:
    SQLState:'01000'
    SQL Server Error:67
    [Microsoft]ODBC SQL Server Driver][DBNETLIB]ConnectionOpen
    (Connect()).
    Connection failed:
    SQLState:'08001'
    SQL Server Error:17
    [Microsoft]ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied
    I think it must be a permissions thing, I've turned off the firewall for now and still no difference, 've also made sure remote connection is enabled.  I can connect to the other sql server in studio manager on the new machine however, i can't go do
    the same in the old server, says:
    cannot connect to hbfsqlpro1\hbfsqlpro1
    Additonal information a network related or instance specifc error occured while establising a connection to SQL server.  The server was not found or was not accessible.  Verify that the instance name is correct and that SQL server is configured to
    allow remote connections. (provider:SQL Network Interfaces, error 26 - error locationg server/instance specified) (Microsoft SQL server)
    the instance is def correct, as that is what i use to connect locally on the new machine and what it comes up on the studio manager on the new machine.  STarting to pull my hair out somewhat, i'm sure it's something really simple! 

    Hello,
    You are trying to connect to a named instance. Make sure the SQL Server Browser service is started on the SQL Server computer.
    Make sure TCP/IP is enabled.
    http://msdn.microsoft.com/en-us/library/ms191294(v=sql.110).aspx
    Try to disable Windows Firewall or security software on both, SQL Server instance and client computer.
    Test basic connectivity too. Try to ping from the client computer to the SQL Server computer.
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • [Microsoft][ODBC Microsoft Access Driver] Syntax error

    I am new to Java. I have tried to write a simple program insert table in Access2002. However, I got the following error,
    ERROR: [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement
    My code is as follows,
    import java.lang.*;
    import java.sql.*;
    import java.util.*;
    import java.text.*;
    public class dateconv3 {
    public static void main (String[] args) {
    //Setting up the JDBC-ODBC bridge connection
    String DRIVER_NAME = "sun.jdbc.odbc.JdbcOdbcDriver";
    String CONNECTION_URL = "jdbc:odbc:book1";
    // The JDBC Connection Object
    Connection con = null;
    // The JDBC PreparedStatement object
    PreparedStatement ps = null;
    boolean rc = false;
    try { // try under for loop
    // Get an connection
    Class.forName(DRIVER_NAME).newInstance();
    con = DriverManager.getConnection(CONNECTION_URL);
    SimpleDateFormat formatter = new SimpleDateFormat ("yyyy/mm/dd");
    java.util.Date currentTime_1 = new java.util.Date();
    String dateString = formatter.format(currentTime_1);
    ParsePosition pos = new ParsePosition(0);
    java.util.Date currentTime_2 = formatter.parse(dateString, pos);
    java.sql.Date dCurDate=new java.sql.Date(currentTime_2.getTime());
    System.out.println(dCurDate);
    String userid = "1";
    String booktitle = "Java Servlet Programming";
    int amount = 202;
    String sqltxt="INSERT INTO TRANSLOG ( userid, booktitle, date, amount ) VALUES (?,?,?,?)";
    // Create a statement object that we can execute queries with
    ps = con.prepareStatement(sqltxt);
    ps.setString(1, userid);
    ps.setString(2, booktitle);
    System.out.println(currentTime_2);
    java.sql.Date sqlDate = new java.sql.Date(currentTime_2.getTime());
    System.out.println(sqlDate);
    ps.setDate(3, sqlDate);
    ps.setInt(4, amount);
    System.out.println("INSERT into translog table");
    // Execute the statement
    ps.execute();
    rc = true;
    } catch (Exception ex) {
    // Sent the error
    System.out.println("ex.getMessage() print: " + ex.getMessage());
    } finally {
    try {
    if (ps != null) {
    ps.close();
    if (con != null) {
    // Put the connection back into the pool
    con.close();
    } catch (Exception ex) {
    // Ignore any error here
    The Access has been set to the date format yyyy/mm/dd and I got the following result.
    java dateconv3
    2001-01-04
    Thu Jan 04 00:56:00 CST 2001
    2001-01-04
    INSERT into translog table
    ex.getMessage() print: [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement
    Please advise. I got frustrated with such a silly question. Anybody can help me to resolve it.
    Patrick

    INSERT INTO TRANSLOG ( userid, booktitle, date, amount ) VALUES (?,?,?,?)I don't have Access on my computer at home here, but it is quite possible that "date" is a reserved word in Access's version of SQL. If you can change the column name, I'd recommend you do that. Otherwise try changing your SQL code to this:
    INSERT INTO TRANSLOG ( userid, booktitle, [date], amount ) VALUES (?,?,?,?)
    But be warned that this [trick] doesn't work with other databases.

  • [Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.

    Hi,
    I am getting following error message ,
    [Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.
    When run this code.
    <%@ page import= "java.sql.*"%>
    <%
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb");
    Statement st = con.createStatement();
    st.executeUpdate("update tscipshift set 11-Aug-08='M' where TechN='Elamparuthi'");
    %>
    tscipshift=table ,column=11-Aug-08 are all exist.
    I dont know why I am getting error mesage.
    Any idea why?

    Shahbaz2008 wrote:
    you haven't set your user name and password hereI don't believe that's necessary with Access. Then again, it's not an enterprise database.
    Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb");
    change it to this
    Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb","+username+","+password+");
    here pass your username and password...
    In Oracle default user name and password is
    username = scott
    password = tigerSo who uses that? Only an eejit would leave that account open.
    So the statement would be
    Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb","scott","tiger");
    or In Mirosoft Access there is no user name and password so the statement will be Like I said - unnecessary, and not the reason the OP is having problems.
    Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb","","");>
    Besides this change your table name 11-Aug-08 to anything that is not start with number or any special symbols.
    for example aug112008 is good or aug is too good.No, it's still not good if you understand ANYTHING about relational databases and normalization.
    I think it would work.I think you're just as stup!d as the OP.
    %

  • SQL Server Reporting Services: ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

    Hey everyone, So I am trying to get a report onto the server, and in BIDS I kept getting a login screen repeating over and over when I tried to deploy my report, so I tried to upload the file at http://<servername>/Reports This worked, but then trying
    to run this report from http://<servername>/Reports did not work either because "An error has occurred during report processing. (rsProcessingAborted) Cannot create a connection to data source 'FTYDataSource'. (rsErrorOpeningConnection) For more information
    about this error navigate to the report server on the local server machine, or enable remote errors" Anyways I tried to add a New Data Source (which I would use in the report) at http://<servername>/Reports, type ODBC, with the connection string Dsn=blah_blahblah.
    I try to test the connection here and get the error ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified This is really getting old fast, everything I try, a new error comes up. Granted I am new at this,
    but this still should not be this troublesome. Does anyone have any ideas on what could FINALLY allow me to just put a report out onto the server?!? THANK YOU in advance for ANY help.

    Hi,
    Please try setting the credentials of the datasource.
    1. Double click and open the datasource in your project.
    2. Click on the credentials tab, and click on option button 'Use this username and password'
    3. Enter the username and password to connect to the datasource
    4. Deploy or upload the datasource to the report server and try accessing the reports.
    Hope this helps.
    Please click "Mark as Answer" if this resolves your problem or "Vote as Helpful" if you find it helpful.
    BH

  • Database link Oracle to MySql Error [Microsoft][ODBC Driver Manager]

    Dear all:
    I need your help, I want to access mysql database from oracle 11g r2. When I try to connect mysql database from oracle database I'm getting the error shown below, kindly help your help will be appreciated, thanks in advance
    When I excute:
    select * from test1@mysqltest;
    [ERROR]
    ORA-28500: connection from ORACLE to a non-Oracle system returned this message:
    [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified {IM002}
    ORA-02063: preceding 2 lines from THAONT1.MYSQL
    28500. 00000 -  "connection from ORACLE to a non-Oracle system returned this message:"
    *Cause:    The cause is explained in the forwarded message.
    *Action:   See the non-Oracle system's documentation of the forwarded message.
    My config
    oracle db:11.2.0.3 enterprise edition
    os:win 7 64 bits
    mysql connector odbc:64 bit
    mysql db:5.1.19
    ODBC Config
    LISTENER.ORA:
    =============
    # listener.ora Network Configuration File: D:\app\THAONTSE90151\product\11.2.0\dbhome_3\NETWORK\ADMIN\listener.ora
    # Generated by Oracle configuration tools.
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = D:\app\THAONTSE90151\product\11.2.0\dbhome_3)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:D:\app\THAONTSE90151\product\11.2.0\dbhome_3\bin\oraclr11.dll")
        (SID_DESC =
          (SID_NAME = tst)
          (ORACLE_HOME = D:\app\THAONTSE90151\product\11.2.0\dbhome_3)
          (PROGRAM = dg4odbc)
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.12.1.58)(PORT = 1521))
    ADR_BASE_LISTENER = D:\app\THAONTSE90151
    TNSNAMES.ORA:
    ================
    TSTLINK =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.12.1.58)(PORT = 1521))
        (CONNECT_DATA =
          (SID = tst)
        (HS = OK)
    inittst.ora($ORACLE_HOME/hs/admin)
    ========================
    # This is a sample agent init file that contains the HS parameters that are
    # needed for the Database Gateway for ODBC
    # HS init parameters
    HS_FDS_CONNECT_INFO = testmysql
    HS_FDS_TRACE_LEVEL = off
    # Environment variables required for the non-Oracle system
    #set ODBCINI=D:\ODBC.INI
    dblink created from oracle to mysql:
    ==========================
    SQL> create public database link mysqltest
    connect to thaont identified by abc123 using 'TSTLINK';
    SQL>select * from test1@mysqltest;
    [ERROR]
    ORA-28500: connection from ORACLE to a non-Oracle system returned this message:
    [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified {IM002}
    ORA-02063: preceding 2 lines from THAONT1.MYSQL
    28500. 00000 -  "connection from ORACLE to a non-Oracle system returned this message:"
    *Cause:    The cause is explained in the forwarded message.
    *Action:   See the non-Oracle system's documentation of the forwarded message.
    kindly help.
    thanks & regards.

    The error message "[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified {IM002}" is self explainind - DG4ODBC is not able to find the ODBC DSN you created.
    In your gateway init file you configured the DSN: HS_FDS_CONNECT_INFO = testmysql
    And according to the Windows ODBC Admin screenshot you created a DSN called testmysql - unfortunately you created it as a USER DSN. But DG4ODBC needs a SYSTEM DSN. The reasin why it needs a system DSN is that by default the Oracle listener is running in the local system account. So when you create an ODBC USER DSN it can be access by the user who created it, but nobody else can use it - also not the local system account which is serving the Oracle listener. So you need to create a system DSN that every user on this machine can use the DSN (including the local system account) .
    - Klaus

  • Error [Microsoft][ODBC Excel Driver]Optional feature not implemented...

    Hi All,
    when i add setAutoCommit(false),
    i got run error [Microsoft][ODBC Excel Driver]Optional feature not implemented.
    i just want to insert data into excel using db.
    can anyone give suggestion??
    here my code:
    public void insertDatabase( ){
                String rule = "fty";
                double weight = 0.245;
               try{
                    String sql = "INSERT INTO [Sheet2$] ( Rule, Weight ) " +
                      "VALUES ( '"+ rule +"', '" + weight + "' )";
                     int row = myStatement.executeUpdate(sql);
                   myConnect.setAutoCommit(false);
                     myResultSetPapar = myStatement.executeQuery("Select * from [Sheet2$]");
                catch(SQLException e){
                            System.out.println(e.getMessage());
               }//catch
           }

    is it true that my driver does not supported??
    my MS Excel version 2002
    and driver vers. 4.0

  • Error using "Microsoft ODBC for Oracle" driver

    I am trying to connect to Oracle 10g Express Edition from Access 2003 on Windows XP. I created a DSN using "Microsoft ODBC for Oracle" driver. When I try to connect using ADO, I get this error:
    [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed
    I googled this error and got a lot of hits but no solution.
    Any help would be greatly appreciated. I am new to Oracle and am coming from SQL Server 2000.
    Thanks a lot!

    This is the connection string I am using:
    Conn1.ConnectionString = "driver={Oracle in XE};Dbq=GMIS_LIVE.WORLD;Uid=Administrator;Pwd=ubs;"
    These are the contents of my tnsnames.ora (what entries do I add to make this work)?
    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = your-a9279112e3)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    ORACLR_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    (CONNECT_DATA =
    (SID = CLRExtProc)
    (PRESENTATION = RO)
    )

  • [Microsoft][ODBC SQL Server Driver]COUNT field incorrect or syntax error

    Hi , i am trying to execute siple SP using JDBC-ODBC Bridge Driver
    Here my code :
    String dsn="Tritek1";
    String user="sa";
    String password="imcindia";
    Connection con1 = null;
    CallableStatement cstmt = null;
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
    con1=DriverManager.getConnection("jdbc:odbc:"+dsn,user,password);
    Statement st=con1.createStatement();
    st.execute("use dm0102d");
    st.execute("setuser 'dm01012'");
    cstmt = conObject.connection(" ?=Call dms_ex_get_folder_info(?,?,?)");
    cstmt.setString(1,folderType);
    cstmt.registerOutParameter(2,java.sql.Types.VARCHAR);
    cstmt.registerOutParameter(3,java.sql.Types.VARCHAR);     bFlag=cstmt.execute();
    Here my SP :
         Procedure Name          :     dms_ex_get_folder_info
         Input Parameter(s)          :     a. folder_type char(20)
         Return Parameter(s)     :     a. Recordset consist edit_mask and folder_type_code from folder_reference table / error
         Procedure Type          :     select
         Programmer          :     Prashanth Kumar M.
         Creation Date          :     12/20/2005 (20th Dec, 2005)
         Tables Accessed          :     folder_reference
         Revised               :
              Programmer:     Date:     Description:
              Prashanth Kumar M.      12/21/2005 Modified the script as per the approved program specifications.
         Test Query:
              Declare @edit_mask char(15)
              Declare @folder_type_code char(2)
              execute dms_ex_get_folder_info 'Policy Folder',@edit_mask output,@folder_type_code output
              Print 'Edit Mask : ' + @edit_mask
              Print 'Folder Type Code : ' + @folder_type_code
    CREATE PROCEDURE dms_ex_get_folder_info
         @folder_type char(20),
         @edit_mask char(15) output,
         @folder_type_code char(2) output
    AS
         BEGIN
              -- Check if the record for @folder_type exists or not.
              BEGIN
                   -- return the record from folder_reference
                   SELECT
                        @edit_mask= IsNull(edit_mask,''),
                        @folder_type_code = IsNull(folder_type_code,'')
                   FROM      folder_reference
                   WHERE
                        folder_decode = ltrim(rtrim(@folder_type))
                   -- return the error message
                   IF @@error <> 0
                        BEGIN
                             RAISERROR 100016 'Error in gettting the record from folder_reference table'
                             RETURN (@@error)
                        END
                   IF @edit_mask = '' AND @folder_type_code = ''
                        BEGIN
                             RAISERROR 100017 'No matching details in the folder_reference table'
                        RETURN (@@error)
                        END
              END
         END
    GO
    Here My Exception:
    java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]COUNT field incorrect or syntax error
         at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
         at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
         at sun.jdbc.odbc.JdbcOdbc.SQLExecute(Unknown Source)
         at sun.jdbc.odbc.JdbcOdbcPreparedStatement.execute(Unknown Source)
         at com.nyl.dms.bl.Folder.createFolder(Folder.java:121)
         at com.nyl.dms.bl.Folder.main(Folder.java:223)
    Any one can help me to overcome this problem . Thanks in advance.
    venkat

    Here's from one of those 10s of books.
    Quoted from JDBC 3.0 by Bernard Van Haecke:
    Stored procedures can return multiple result types because they can be composed of SQL statements that return diverse result types: resultsets and update counts (this includes special error codes).
    Now this doesn't sound very satisfactory. So I use Sybase since I don't have any other database at the moment, and write a simple stored procedure.
    CREATE proc testproc AS
    BEGIN
    -- My return code
    return 7
    END
    goThen a sample patchy buggy code to play around:
    import java.sql.*;
    public class ProcTesting {
        public static void main(String[] args) {
            String connUrl          = "jdbc:sybase:Tds:myserver:5150/dbinst";
            String userName         = "username";
            String password         = "password";
            Connection con          = null;
            CallableStatement stmt  = null;
            ResultSet rs            = null;
            String sql = "{? = call testproc}";
            try {
                Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();
                con     = DriverManager.getConnection(connUrl, userName, password);
                stmt    = con.prepareCall(sql);
                stmt.registerOutParameter(1, Types.INTEGER);
                stmt.execute();
                System.out.println(stmt.getInt(1));
            } catch(Exception e) {
                e.printStackTrace();
            } finally {
                closeAll(con, stmt);
        public static void closeAll(Connection con, Statement stmt) {
            try {
                con.close();
            } catch(Exception e) {  }
            try {
                stmt.close();
            } catch(Exception e) {  }
    }Followed by:
    javac ProcTesting.java
    java -cp "%CLASSPATH%;C:\jarutils\jconn2.jar" ProcTesting
    Output:
    7
    Didn't you know this could be done?
    Happy new year, grandpa!

Maybe you are looking for