JDBC TYPES.Integer Data Type--Oracle seems useless

I have a set of applications that work on every database I've
tried it on except Orocle. They rely very heavily on making a
query and then grabbing the correct data type (e.g., getInt() vs.
getString()) based on the int value returned in the
ResultSetMetaData. The problem here is that the type returned
for Integer columns, however, is always NUMBER and therefore
always has a decimal place and gets automatically converted into
a double. This wreaks havoc on all of the classes which assume
that certain columns will be int's (e.g., primary keys). Also,
since I'm programming servlets, I am often throwing the values
into forms where the values will be retrieved and have an
Integer.parseInt() run on them--Integer.parseInt() will not work
on Strings with decimal points.
I realize why Oracle does this (because an integer is a number
with no decimals) and what the workaround is (use a
NumberFormatter instead of Integer.parseInt() or use Oracle's
extensions to preset the datatype). But why should I have to
hack up my code just because Oracle programmers can't figure out
how to get its JDBC drivers to return the proper Type code?
Is there any other w
null

I have a set of applications that work on every database I've
tried it on except Orocle. They rely very heavily on making a
query and then grabbing the correct data type (e.g., getInt() vs.
getString()) based on the int value returned in the
ResultSetMetaData. The problem here is that the type returned
for Integer columns, however, is always NUMBER and therefore
always has a decimal place and gets automatically converted into
a double. This wreaks havoc on all of the classes which assume
that certain columns will be int's (e.g., primary keys). Also,
since I'm programming servlets, I am often throwing the values
into forms where the values will be retrieved and have an
Integer.parseInt() run on them--Integer.parseInt() will not work
on Strings with decimal points.
I realize why Oracle does this (because an integer is a number
with no decimals) and what the workaround is (use a
NumberFormatter instead of Integer.parseInt() or use Oracle's
extensions to preset the datatype). But why should I have to
hack up my code just because Oracle programmers can't figure out
how to get its JDBC drivers to return the proper Type code?
Is there any other w
null

Similar Messages

  • Java Types & JDBC Types & Oracle Types

    I insert in a row from a table a value that can be an int or float.
    Then I want to get the same value. How can I know its type when I extract this value.
    I made rs.getComlumnType() and I get NUMBER type. I compare in next switch:
    case Types.INTEGER
    case Types.NUMERIC//this is what I get
    case Types.FLOAT
    and i get NUMERIC. I was expecting to get INTEGER OR FLOAT.

    Actually, the Oracle driver (classes12.zip) will return a type of DECIMAL from the DatabaseMetaData classes getColumns method, if the oracle column is a number. Other than the DatabaseMetaData class, it looks like the driver always returns the NUMERIC type for Oracle numbers. Developers should be aware of that discrepancy until Oracle changes the driver implementation.
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Jeff Lee ([email protected]):
    I believe that the metadata Oracle returns is NUMERIC for all number types. I do not think it will return INTEGER or FLOAT. I always read my numbers into BigDecimal objects and then work with them from there on the Java side. I don't know if that will satisfy your particular needs, but perhaps it will. Good luck!
    <HR></BLOCKQUOTE>
    null

  • Using JDBC Adapter posting data from Oracle database to Falt file????

    Hi All,
      By using JDBC adapter, for now I have to connect to Oracle Database and then get the employee information from the Employee Table and post it to the flat file, can you please help me out the complete procedure...
    Thanks in advance
    Andy

    Hi Andy,
    have a look at the help for configuring a JDBC Sender adapter: http://help.sap.com/saphelp_nw04/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm
    It mentions all the settings you'll need to make e.g. the connection URL as posted above.
    And it also lists how an XML file looks like that contains the query results according to the SQL Select statement in the adapter.
    <resultset>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    </resultset>
    So you have to create a datatype, message type and message interface to match this structure (of course you'll need to substitute column-name1 etc. with the column names in your select statement).
    Now if you want to create a flat file from that, you have to create an XML representation of that flat file and use the content conversion in the receiver file adapter as defined here: http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
    Regards
    Christine

  • Validation on Integer data type attribute

    Hi,
    Working on jdev 11.1.1.3.0
    I have to do validation on integer data type like, it should not allow 13.20(only single digit numbers.).
    I am doing validation on AMImpl and converting the int into string
    String per=Row.getPer().toString();// here if user enter 13.20, then per containing only 13 so its not going to inside if.
    if(StringUtils.contains(per,"."))
    return false;
    Even i have written regular expression on my field but its working
    can any one help me.

    Hi,
    Why don't you use the af:convertNumber in your tag?
    Something like that:
    <af:inputText>
    <af:convertNumber>
    </af:inputText>
    Doc: http://download.oracle.com/docs/cd/E12839_01/apirefs.1111/e12419/tagdoc/af_convertNumber.html
    Regards,

  • Problems Validating an Attribute of type oracle.jbo.domain.date

    I have a form that has a date input field. I am trying to customise the exception error for this field for when the user enters something other than my dd/MM/yyyy format. ie JBO-25009: oracle.jbo.domain.DataCreationException
    This Attribute uses a the oracle.jbo.domain.date data type. An exception is finally thrown when the transaction trys to commit.
    My problem is that I can't customise the exception because I can't catch where it is occuring. I have tried at the <setAttributeInternal>, <setAttribute> and <validateEntity> levels uses both try{}catch(Jbo Exception){} and try{}catch(AttrValException){}. I believe the reason for this is because the problem occurs because the parse value to functions are invalid dates so it never enters them.
    If this is true validation and any exception thrown should occur at the data type level, but the the oracle.jbo.domain.date class doesn't have a validate method.
    Can someone please help me get around this problem. Or tell me if the have a solution for date input validation.

    The usecase is as follows:
    I have a DynaAction Form with a input field for a date value. This field in the form is associated with an entity attribute that is of the type oracle.jbo.domain.date
    In the message bundle for this entity I specify a format (dd/MM/yyyy) and formatter for the field (oracle.jbo.format.DefaultDateFormatter). In the jsp page I display the field using the following tag within the <jbo:row> tags,
    <jbo:InputDate dataitem="ChangeDate" formname="ApplicationReleaseForm"/>
    The date picker script works well here and the formatter formats it correctly.
    My error occurs when an invalid date value is entered. Ie characters like "abc" or numeric values that don't match a date format ie my date format (dd/MM/yyyy) or the default format of the jbo.domain.date type(yyyy-MM-dd).
    On submitting my form the input is posted to an action that extends the Update action class. I use the following expression to cache the input from the form in the viewobject:
    ActionForward actionForward = super.execute(mapping,form,request,response);
    The invalid input appears to be able to slip through this call without causing an exception, unless I make the attribute manditory. In this case an exception is thrown causing the form to be returned and the mandatory value error message to be shown.
    If the attribute is not mandatory the exception is not thrown until I make a call to commit; eg
    context.getApplicationModule().getTransaction().commit();
    The DataCreationException is the initial exception that is caught and causes the rest of the transaction to fall over.
    It is my understanding that if the input is wrong then it should be picked up when the form data is pushed into the viewobject, ie in the call to execute and at the setAttributeInternal() method call for the attribute in the viewobject. I don't believe that the input gets this far as the input is not a valid date, indicating to me that the oracle.jbo.domain.date should be the object throwing the exception.
    I hope this gives you a better understanding of the process and where and what causes the problem to occur.

  • How to insert long text data in oracle for LONG column type??

    Anybody who can tell me what is best way to store long text (more than 8k) in Oralce table.
    I am using Long datatype for column but it still doenst let me insert longer strings.
    Also I am using ODP.Net.
    Anybody with a good suggestion???
    Thanks in advance

    Hi,
    Are you getting an error? If so, what?
    This works for me..
    Greg
    create table longtab(col1 varchar2(10), col2 long );
    using System;
    using System.Data;
    using Oracle.DataAccess.Client;
    using Oracle.DataAccess.Types;
    using System.Text;
    public class longwrite
    public static void Main()
    // make a long string
    StringBuilder sb = new StringBuilder();
    for (int i=0;i<55000;i++)
    sb.Append("a");
    sb.Append("Z");
    string indata = sb.ToString();
    Console.WriteLine("string length is {0}",indata .Length);
    // insert into database
    OracleConnection con = new OracleConnection("user id=scott;password=tiger;data source=orcl");
    con.Open();
    OracleCommand cmd = new OracleCommand();
    cmd.CommandText = "insert into longtab values(1,:longparam)";
    cmd.Connection = con;
    OracleParameter longparam = new OracleParameter("longparam",OracleDbType.Long,indata .Length);
    longparam.Direction = ParameterDirection.Input;
    longparam.Value = indata ;
    cmd.Parameters.Add(longparam);
    cmd.ExecuteNonQuery();
    Console.WriteLine("insert complete");
    //now retrieve it
    cmd.CommandText = "select rowid,col2 from longtab where col1 = 1";
    OracleDataReader reader = cmd.ExecuteReader();
    reader.Read();
    string outdata = (string)reader.GetOracleString(1);
    Console.WriteLine("string length is {0}",outdata.Length);
    //Console.WriteLine("string is {0}",outdata);
    reader.Close();     
    con.Close();
    con.Close();
    }

  • Convert type dats to oracle type date

    Hi guys,
    I have abap field
    data: begin of itab occurs 0,
            dat type dats,
    end of itab.
    how can I convert abap field dat into oracle type DATE, so I can insert dat into that oracle field?
    thanks,
    nihad
    Edited by: nihad omerbegovic on Mar 25, 2009 5:47 PM

    Thanks for suggestion, now I got different error
    Database error text........: "ORA-01858: a non-numeric character was found
    where a numeric was expected#"             
    When I debugg I have some unxpected field values in internal table itab:
    DAT      USNAM        NOVI                                              
    X2009032|0NIHADOM     |                                                   
    X2009032|0NIHADOM     |                                                                               
    But, it should be like this
    DAT      USNAM        NOVI                                              
    20090320|NIHADOM     |X
    20090320|NIHADOM     |X       
    Any idea why I got indicator X in DAT field but it should be in NOVI. Is that why I got above error?
    Thnaks,
    Nihad

  • Last 6 months of data based on date feild that is an integer data type

    Hi Folks
    I have a date column called 'YYYYMM' that is an Integer data type in YYYYMM format (eg. 201309). I want to return records from the last 6 months. 
    If the column was in a date format I could use something like 
    [YYYYMM] >DATEADD(M, -6, CURRENT_TIMESTAMP)
    Therefore I assume I need to do a CONVERSION of INT into a date format with something like
    CONVERT (DATE, [YYYYMM]
    But I get the message  "Explicit conversion from data type int to date is not allowed"
    Can someone suggested a work around?
    Many thanks Steve

    another way is this
    SELECT *
    FROM Table
    WHERE DATEADD(mm,(dateintfield%100)-1,DATEADD(yy,(dateintfield/100) -1900,0)) >=DATEADD(mm,DATEDIFF(mm,0,GETDATE())-6,0)AND DATEADD(mm,(dateintfield%100)-1,DATEADD(yy,(dateintfield/100) -1900,0)) < DATEADD(mm,DATEDIFF(mm,0,GETDATE()),0)
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • How to map Oracle ORDImage type, what is the JDBC-type ?

    Hello,
    I have a field in my Oracle database that has the type ORDSYS.ORDIMAGE. How can I map this in the standardjbosscmp-jdbc.xml file of JBOSS (in the part of the oracle 9i type-mappings)?
    The java type is "oracle.ord.im.OrdImage", but what is the jdbc-type ? Do I have to include extra oracle files in some directories of Jboss ?
    <mapping>
    <java-type>oracle.ord.im.OrdImage</java-type>
    <jdbc-type>?</jdbc-type>
    <sql-type>?</sql-type>
    </mapping>
    Thanks!!!
    Greetz J

    I've never used JBOSS, but, could the jsbc type indicate the jdbc driver to use?
    The sql type is ORDSYS.ORDIMAGE, but I am not sure what JBOSS is looking for...

  • Cannot obtain an appropriate JDBC type for class char.

    The above error while deploying...The full error is below. The only datatypes used are: integer, timestamp,string, decimal and date (so no char).  Can anybody help?
    Caught exception during application deployment from SAP J2EE Engine's deploy service:
    java.rmi.RemoteException: Cannot deploy application sap.com/SAPAS12013.. Reason: Cannot obtain an appropriate JDBC type for class char. To store the field with this class in the database, the class must implement java.io.Serializable.; nested exception is: com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='com.sap.engine.services.ejb.exceptions.deployment.EJBDeploymentException: Cannot obtain an appropriate JDBC type for class char. To store the field with this class in the database, the class must implement java.io.Serializable.
    at com.sap.engine.services.ejb.deploy.tools.sql.Mappings.getDefaultSqlTypeForJavaType(Mappings.java:131)
    at com.sap.engine.services.ejb.deploy.xml.CMPParser.fillCmpFieldInfo(CMPParser.java:89)
    at com.sap.engine.services.ejb.deploy.xml.CMPParser.parseCMPFields(CMPParser.java:644)
    at com.sap.engine.services.ejb.deploy.xml.CMPParser.parseFields(CMPParser.java:121)
    at com.sap.engine.services.ejb.deploy.xml.EJBJarParser.parseXml(EJBJarParser.java:173)
    at com.sap.engine.services.ejb.deploy.xml.EJBJarParser.parseXml(EJBJarParser.java:97)
    at com.sap.engine.services.ejb.deploy.DeployAdmin.parseSingleJar(DeployAdmin.java:296)
    at com.sap.engine.services.ejb.deploy.DeployAdmin.generate(DeployAdmin.java:246)
    at com.sap.engine.services.ejb.EJBAdmin.deploy(EJBAdmin.java:2118)
    at com.sap.engine.services.deploy.server.application.DeploymentTransaction.makeComponents(DeploymentTransaction.java:594)
    at com.sap.engine.services.deploy.server.application.DeployUtilTransaction.commonBegin(DeployUtilTransaction.java:379)
    at com.sap.engine.services.deploy.server.application.DeploymentTransaction.begin(DeploymentTransaction.java:296)
    at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:290)
    at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:323)
    at com.sap.engine.services.deploy.server.DeployServiceImpl.makeGlobalTransaction(DeployServiceImpl.java:3033)
    at com.sap.engine.services.deploy.server.DeployServiceImpl.deploy(DeployServiceImpl.java:463)
    at com.sap.engine.services.deploy.server.DeployServiceImplp4_Skel.dispatch(DeployServiceImplp4_Skel.java:1555)
    at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:294)
    at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:183)
    at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:119)
    at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
    at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
    at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
    at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)

    Hi Ashley,
    And yet, apparently you have a cmp-field with type <b>char</b> in one of your CMP entity beans. This is not supported. Please refer to the <a href="http://help.sap.com/saphelp_nw04/helpdata/en/13/dbb2b66146934a9662918755038ea1/frameset.htm">Object/Relational Mapping Rules</a> and especially to the first bullet under the table.
    Hope that helps!
    Vladimir

  • Cannot assign an empty string to a parameter with JDBC type VARCHAR

    Hi,
    I am seeing the aforementioned error in the logs. I am guessing its happening whenever I am starting an agent instance in PCo. Can somebody explain whats going on?
    Regards,
    Chanti.
    Heres the complete detail from logs -
    Log Record Details   
    Message: Unable to retreive path for , com.sap.sql.log.OpenSQLException: Failed to set the parameter 1 of the statement >>SELECT ID, PARENTID, FULLPATH, CREATED, CREATEDBY, MODIFIED, MODIFIEDBY, REMOTEPATH, CHECKEDOUTBY FROM XMII_PATHS WHERE FULLPATH =  ?  <<: Cannot assign an empty string to a parameter with JDBC type >>VARCHAR<<.
    Date: 2010-03-12
    Time: 11:32:37:435
    Category: com.sap.xmii.system.FileManager
    Location: com.sap.xmii.system.FileManager
    Application: sap.com/xappsxmiiear

    Sounds like a UI browsing bug (when no path is selected from a catalog tree folder browser) - I would suggest logging a support ticket so that it can be addressed.

  • Help: Connecting Tomcat to CA-IDMS Using JDBC Type 4 Drivers (JNDI)

    Hi there,
    I have a rather interesting / complex problem......creating a connection to CA-IDMS from Tomcat using JDBC type 4 drivers (CA provide the type 4 driver).
    We have a zSeries 9 IBM mainframe running CA-IDMS r16.1, and I need to connect to the IDMS from Tomcat (running on Linux) using the JDBC Type 4 drivers provided by CA.
    At this stage I am struggling with the actual setup and configuration of Tomcat’s server.xml and web.xml files. These are the files where the JDBC configuration is set (I think). I have to setup the CA-IDMS part of the configuration, but that is a different problem. Basically there is a TCP/IP listener on the IDMS, waiting for incoming connections from the JDBC type 4 driver.
    I set up a Tomcat to MySQL connection using MySQL Connector / J, which is a similar kind of process to what I am trying to achieve with IDMS. MySQL connector / J came with a jar file which is placed in Tomcat’s lib folder, and then the JDBC setup for the web application is created in Tomcat's server.xml and web.xml files. You can then connect to the MySQL database using JSP and the configured JDBC driver / connection. The CA-IDMS Server comes with an idmsjdbc.jar file, which I think is the JDBC typr 4 driver. I think it needs to be placed in the Tomcat /lib folder, but I don’t know how to set up the configuration.
    There is a JDBC DriverManager which allows JDBC drivers to connect to CA-IDMS. The DriverManager recognises the following syntax:
    jdbc:idms://hostname:port/database
    This allows the JDBC driver running within Tomcat to connect to the IDMS which is running on the IDM mainframe. CA IDMS r16 supports direct connections from the Type 4 JDBC driver to the Central Version on IDMS. "hostname" is the DNS name or IP address of the machine where the CV is running, and "port" is the IP port that was specified for the listener PTERM (setup on the IDMS side).
    There is a caidms.properties file for the JDBC driver, which is used to specify user ID, password, and optional accounting information. It can also be used to specify physical connection information, allowing an application to connect to a CA-IDMS database without requiring the definition of an ODBC style data source. However, I don’t know where to place this file within the Tomcat setup.
    There is also an IdmsDataSource class. I don’t know where to configure this or how to set it up; the CA-IDMS Server manual states the following:
    This class implements the JDBC DataSource interface. It is used with an application server (Tomcat) providing Java Naming and Directory Interface (JNDI) naming service to establish a connection to a CA IDMS database. IdmsDataSource properties conform to the Java Beans naming conventions and are implicitly defined by public “setter” and “getter” methods. For example, the “description” property, which is required for all DataSource implementations, is set using the setDescription(String) method. The application server may use the java.lang.reflection methods to discover DataSource properties and provide an interface to set them, or may simply require that they are defined in some configuration file. IdmsDataSource properties are used to specify the connection parameters. These properties are the equivalent of the DriverPropertyInfo attributes described in the previous section and can be used to completely define the parameters needed to connect to a database. Like a URL, an IdmsDataSource object can also reference an “ODBC” style data source name, where the connection parameters are defined in the configuration file on Linux.
    Is there anyone that can try to point me in the right direction to setting up the JDBC connection? I am totally new to Java and so the instructions are not making much sense at the moment. Any help, hints, tips…..anything will be greatly appreciated as I have just hit a brick wall here. I can't find much to do with setting up the CA-IDMS Server JDBC type 4 driver online either....if anyone can point me to some resources that would also be extremely useful.
    Kind regards
    Jp

    You say you've managed to get the JDBC driver working
    in an application but not in a JSP. You also say that
    the error you get is
    "com.microsoft.jdbc.sqlserver.SQLServerDriver".
    I'd be willing to bet that the exception that you have
    got is a ClassNotFoundException. I.E. your application
    server hasn't found the JDBC driver classes. The
    application server probably doesn't use your current
    CLASSPATH to look for classes. It will be setup within
    the application server in some way and you'll need to
    check your app server documentation to see how it is
    done.
    Try replacing
    e.printStackTrace();with
    e.printStackTrace(out);to get a full stack trace of your error.
    ColTried it. Got this error when I tried to run the JSP.
    Incompatible type for method. Can't convert javax.servlet.jsp.JspWriter to java.io.PrintWriter.
              e.printStackTrace(out);
    I'm currently using Apache Tomcat 4.0.3 as my JSP/Servlet Container.
    I'm also using Type 4 MS SQL Server 2000 JDBC driver version 2.0 on my NT4.0 Server.
    Do I need to set my JDBC driver in my container? if so, how do I do that?

  • Error Message: JBO-25009: Cannot create an object of type:oracle.jbo.domain

    Hi, When im giving a default value to a date column in the attribute settings i get this error when im running my jsp page (bc4j web application):
    Error Message: JBO-25009: Cannot create an object of type:oracle.jbo.domain.Date with value: 31-dic-2099
    How can i fix that? I�ve already trying all possible date formats.
    Thanku

    The default format for Date (oracle.sql.DATE which is the superclass of oracle.jbo.domain.Date) is yyyy-mm-dd.

  • Unable to cast object of type 'Oracle.DataAccess.Types.OracleDecimal'......

    I have some Oracle Tables with sequences for primary key and stored procs in packages to wrap up the insert commands. The sequences field are all declared as NUMBER.
    I also have Datasets based on the tables and a DataAdapter for each package. The Datasets see the primary keys as System.Decimal. The DataAdapter sees the output primary key parameter to the stored procs as OracleDecimal.
    tmp.Parameters.Add(new OracleParameter("P_ID", Oracle.DataAccess.Client.OracleDbType.Decimal, ParameterDirection.Output));
    tmp.Parameters["P_ID"].SourceColumn = "ID";
    When I call the Update on the DataAdapter the update happens on the DB and then I get the following error
    System.ArgumentException : Unable to cast object of type 'Oracle.DataAccess.Types.OracleDecimal' to type 'System.IConvertible'.Couldn't store <231> in ID Column. Expected type is Decimal.
    ----> System.InvalidCastException : Unable to cast object of type 'Oracle.DataAccess.Types.OracleDecimal' to type 'System.IConvertible'.
    If I change the Oracle parameter to Oracle.DataAccess.Client.OracleDbType.Int32 or Oracle.DataAccess.Client.OracleDbType.Int64 it works fine - any ideas why that would be ? I would expect System.Decimal to map to Oracle.DataAccess.Types.OracleDecimal.

    Hi,
    If I change the Oracle parameter to Oracle.DataAccess.Client.OracleDbType.Int32 or Oracle.DataAccess.Client.OracleDbType.Int64 it works fine - any ideas why that would be ? I would expect System.Decimal to map to Oracle.DataAccess.Types.OracleDecimal.
    I'm trying to do the same, but no matter what I do, I get the OracleDecimal error. Parameter is defined as:
    bq. this._adapter.InsertCommand = new global::Oracle.DataAccess.Client.OracleCommand(); \\ this._adapter.InsertCommand.Connection = this.Connection; \\ this._adapter.InsertCommand.CommandText = "INSERT INTO PERSON\r\n                      (ID, SURNAME, NAME, BIRTHCITY, EMSO)\r\nV" + \\ +"ALUES (:ID, :SURNAME, :NAME, :BIRTHCITY, :EMSO) RETURNING ID INTO :ID";+ \\ this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text; \\ param = new global::Oracle.DataAccess.Client.OracleParameter(); \\ param.ParameterName = "ID"; \\ param.DbType = global::System.Data.DbType.Int32; \\ param.OracleDbType = global::Oracle.DataAccess.Client.OracleDbType.Int32; \\ param.Direction = global::System.Data.ParameterDirection.Output; \\ param.IsNullable = true; \\ param.SourceColumn = "ID"; \\ this._adapter.InsertCommand.Parameters.Add(param);
    But no luck...

  • MDO Query errors in log -[Cannot fetch column 22, which has JDBC type DOUBLE, into a Java variable of type ]

    Hello,
    We are seeing a lot of log messages like the one below when an MDO select query is run. There is a message for every numeric column. There doesnt seem to be any issue with the queries working properly its just creating a lot of log messages. Has anyone else had this issue?
    Exception of type com.sap.sql.log.OpenSQLException caught:
    Cannot fetch column 22, which has JDBC type DOUBLE, into a Java variable of type
    float..
    [EXCEPTION]
    com.sap.sql.log.OpenSQLException: Cannot fetch
    column 22, which has JDBC type DOUBLE, into a Java variable of type float.
    at com.sap.sql.log.Syslog.createAndLogOpenSQLException(Syslog.java:83) ...

    Hi Christian,
    You are right. As in your case it is a select query it does not reflect the error automatically. In my case, I had an insert query so it failed then and there, which was easier to debug and fix.
    I have one question regarding your case. When you read the MDO using the query, what do you do with the output? Do you assign it to any local/transaction property in the output links of the query block or in a proceeding assignment block?
    Because, the error mentions that the assignment of float to double datatype fails. So, in theory there should be some assignment done with the output.
    Please check if you could figure out this part in your transaction.
    Regards,
    Saumya Govil

Maybe you are looking for

  • How to include preUUTloop results in report?

    In preUUTloop the operator is polled to choose a few parameters (messages with 2-3 buttons to choose from) How do I record his choces in the report? Desirably, this data should be reported in the very beginning on the report only, not in every UUT lo

  • MC_UPDATE_VMVA  in Ecc 6.0 upgrade

    Hi,   We are in process of upgrade from 4.7->Ecc 6.0 , we are stuck in Tabim_post phase,please check the log below.   We had run the program SAPMAC0 to generate the functional_module still not possibule. I am logging with ddic user in 000 client, whe

  • Photoshop CS6, Free Transform & interpolation on Smart Objects

    Hi, I'm really frustrated with this, since in all the previous versions this problem was not present. When I try to scale down a Smart Object, by using the Free Transform tool, I get over-sharped edges. I suspect this is an interpolation issue. Mind

  • Sending Motion files to Color?

    I'm trying to send a clip from fcp that was previously manipulated in Motion, to Color. When I send the clip into Color the sequences that were worked in Motion show as red empty boxes indicating the need to be "reconnected to media". I cant find the

  • How to estimate the database size?

    Hello. I have a database model in SQL data modeler. Also I've created it on the test server, but it is empty now. Now I need to estimate the size of the database for understanding the requirements to production hardware. For, example how many gigabyt