zoukankan      html  css  js  c++  java
  • JDBC杂烩饭

    Registering Output Parameters

    The type codes in java.sql.Types or oracle.jdbc.OracleTypes identify the
    SQL types of the output parameters in the registerOutParameter method of the
    java.sql.CallableStatement and
    oracle.jdbc.OracleCallableStatement interfaces.
    These are the forms that the registerOutputParameter method can take for the
    CallableStatement and OracleCallableStatement interfaces
    cs.registerOutParameter(int index, int sqlType);
    cs.registerOutParameter(
    int index, int sqlType, String sql_name);
    cs.registerOutParameter(
    int index, int sqlType, int scale);
    In these signatures, index represents the parameter index, sqlType is the type code
    for the SQL data type, sql_name is the name given to the data type, for user-defined
    types, when sqlType is a STRUCT, REF, or ARRAY type code, and scale represents
    the number of digits to the right of the decimal point, when sqlType is a NUMERIC or
    DECIMAL type code.
    setNull Method
    The type codes in Types and OracleTypes identify the SQL type of the data item,
    which the setNull method sets to NULL. The setNull method can be found in the
    java.sql.PreparedStatement and
    oracle.jdbc.OraclePreparedStatement interfaces.
    These are the forms that the setNull method can take for the PreparedStatement
    and OraclePreparedStatement objects:
    ps.setNull(int index, int sqlType);
    ps.setNull(
    int index, int sqlType, String sql_name);
    In these signatures, index represents the parameter index, sqlType is the type code
    for the SQL data type, and sql_name is the name given to the data type, for
    user-defined types, when sqlType is a STRUCT, REF, or ARRAY type code. If you enter
    an invalid sqlType, a ParameterTypeConflict exception is thrown.
    The following example uses a prepared statement to insert a null value into the
    database. Note the use of OracleTypes.NUMERIC to identify the numeric object set
    to NULL. Alternatively, Types.NUMERIC can be used.
    Method setFixedCHAR for Binding CHAR Data into WHERE Clauses
    CHAR data in the database is padded to the column width. This leads to a limitation in
    using the setCHAR method to bind character data into the WHERE clause of a SELECT
    statement. The character data in the WHERE clause must also be padded to the column
    width to produce a match in the SELECT statement. This is especially troublesome if
    you do not know the column width.
    To remedy this, Oracle has added the setFixedCHAR method to the
    OraclePreparedStatement class. This method runs a non-padded comparison.
    OraclePreparedStatement pstmt=(OraclePreparedStatement) conn.prepareStatement("select count(*) from my_table where col1=?");
    pstmt.setFixedCHAR(
    1, "JDBC");

    //or method 2nd
    OraclePreparedStatement pstmt=(OraclePreparedStatement) conn.prepareStatement("select count(*) from my_table where trim(col1)=?");
    pstmt.setString(
    1, "JDBC");

      

  • 相关阅读:
    Mybatis Cause: java.lang.ClassNotFoundException: Cannot find class:
    java常见面试题及部分答案
    页面css样式找不到问题
    深入分析Java I/O的工作机制 (二)
    深入分析Java I/O的工作机制 (一)
    LifecycleProcessor not initialized
    几个java小例子
    idea 过段时间java程序包不存在问题 ?
    使用HttpClient发送Get/Post请求 你get了吗?
    Convert PIL Image to byte array?
  • 原文地址:https://www.cnblogs.com/freewater/p/2156247.html
Copyright © 2011-2022 走看看