• 相关软件
    >Connection 创建者:webmaster 更新时间:2005-12-17 02:04





    接口 java.sql.Connection


    public interface Connection


    一个 Connection 表示与一个特定数据库的会话。在一个 Connection 的上下文中,执行 SQL 语句并返回结果。

    一个 Connection 的数据库能够提供描述以下内容的信息,它的表,它支持 SQL 语法,它的存储过程,该连接的能力等等。该信息可用 getMetaData
    方法获得。

    注意: 缺省情况下,在执行完每一个语句之后,Connection 自动地提交更改。如果禁止自动提交,必须进行显式的提交,否则将不保存对数据库的更改。



     
    参见:
     
    getConnection, Statement, ResultSet, DatabaseMetaData





    变量索引



    TRANSACTION_NONE
    不支持事务。
    TRANSACTION_READ_COMMITTED
    防止页面重写读取;但可能发生不可重复的读取和幻象读取。
    TRANSACTION_READ_UNCOMMITTED
    可能发生页面重写读取,不可重复的读取和幻象读取。
    TRANSACTION_REPEATABLE_READ
    防止页面重写读取和不可重复的读取,但可能发生幻象读取。
    TRANSACTION_SERIALIZABLE
    防止页面重写读取,不可重复的读取和幻象读取。



    方法索引



    clearWarnings()
    此调用完成之后,以后的 getWarnings 将返回 null 直到为该
    Connection 报告了一个新的警告。
    close()
    在有些情况下,需要立即释放 Connection 的数据库和 JDBC 资源,而不是等待它们被自动释放;close 方法可以进行立即释放。
    commit()
    提交从上一次提交 / 回滚操作后所有的更改,使之成为永久的更改,并释放 Connection 当前保持的任何数据库锁。
    createStatement()
    不带参数的 SQL 语句通常用 Statement 对象执行。
    getAutoCommit()
    获得当前自动提交状态。
    getCatalog()
    返回 Connection 的当前分类表名。
    getMetaData()
    一个 Connection 的数据库能够提供描述以下内容的信息,它的表,它支持 SQL 语法,它的存储过程,该连接的能力等等。
    getTransactionIsolation()
    获得该 Connection 的当前事务隔离模式。
    getWarnings()
    返回由该 Connection 的调用报告的第一个警告。
    isClosed()
    检测一个 Connection 是否被关闭。
    isReadOnly()
    检测该连接是否在只读状态。
    nativeSQL(String)
    在发送之前,一个驱动程序把 JDBC sql 语法转换为它的系统本地的
    SQL 语法;nativeSQL 将返回驱动程序要发送语句的本地形式。
    prepareCall(String)
    通过创建一个 CallableStatement 来处理一个 SQL 存储过程调用语句。
    prepareStatement(String)
    一条带有或不带 IN 参数的 SQL 语句可以被预编译并存放在
    PreparedStatement 对象中。
    rollback()
    回滚撤消从上一次提交 / 回滚操作后的所有更改,并释放 Connection 当前保持的任何数据库锁。
    setAutoCommit(boolean)
    如果一个连接处于自动提交状态,它所有的 SQL 语句将被执行并作为单个事务提交。
    setCatalog(String)
    通过设置一个分类表名,可以选择该 Connection 的数据库的一个子空间。
    setReadOnly(boolean)
    可以把一个连接设置为只读模式,作为启动数据库优化的提示。
    setTransactionIsolation(int)
    可以用一个 TRANSACTION_* 值调用该方法,改变事务的隔离级别。




    变量



    TRANSACTION_NONE

    public static final int TRANSACTION_NONE


    不支持事务。




    TRANSACTION_READ_UNCOMMITTED

    public static final int TRANSACTION_READ_UNCOMMITTED


    可能发生页面重写读取,不可重复的读取和幻象读取。




    TRANSACTION_READ_COMMITTED

    public static final int TRANSACTION_READ_COMMITTED


    防止页面重写读取;可能发生不可重复的读取和幻象读取。




    TRANSACTION_REPEATABLE_READ

    public static final int TRANSACTION_REPEATABLE_READ


    防止页面重写读取和不可重复的读取,但可能发生幻象读取。




    TRANSACTION_SERIALIZABLE

    public static final int TRANSACTION_SERIALIZABLE


    防止页面重写读取,不可重复的读取和幻象读取。






    方法



    createStatement

    public abstract Statement createStatement() throws SQLException


    不带参数的 SQL 语句通常用 Statement 对象执行。 如果多次执行同一个 SQL 语句,使用一个 PreparedStatement 就更有效。



     
    返回值:
     
    一个新建的 Statement 对象
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    prepareStatement

    public abstract PreparedStatement prepareStatement(String sql) throws SQLException


    一条带有或不带 IN 参数的 SQL 语句可以被预编译并存放在
    PreparedStatement 对象中。 该对象可用于有效地多次执行该语句。

    注意: 为了处理那些能由预编译得到好处的带参数的 SQL 语句,该方法进行了专门的优化。如果驱动程序支持预编译,prepareStatement 将把该语句发送给数据库进行预编译。有些驱动程序不支持预编译。在这种情况下,在执行 PreparedStatement 语句之前,将不把语句发送到数据库。这对用户没有直接的影响;但是它确实影响某些 SQLExceptions 将由哪个方法抛出 。



     
    参数:
     
    sql - 一个 SQL 语句,它可以包含一个或多个 '?' IN 参数的位置标志符。
    返回值:
     
    一个包含该预编译语句的新建的 PreparedStatement 对象。
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    prepareCall

    public abstract CallableStatement prepareCall(String sql) throws SQLException


    通过创建一个 CallableStatement 来处理一个 SQL 存储过程调用语句。CallableStatement 提供了设置其 IN 和 OUT 参数的方法和执行它的方法。

    注意: 为了处理存储过程调用语句对该方法进行了优化。当 prepareCall 完成时,有些驱动程序可能把调用语句发送给数据库;其它的语句可能等到执行 CallableStatement 时发送。这对用户没有直接的影响;但是它确实影响到哪个方法抛出一定的 SQLExceptions。



     
    参数:
     
    sql - 一个 SQL 语句,它可以包含一个或多个 '?',参数的位置标志符。 通常这个语句是一个 JDBC 功能调用转义字符串。
     
    返回值:
     
    一个包含该预编译的 SQL 语句的新建的 CallableStatement 对象。
     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    nativeSQL

    public abstract String nativeSQL(String sql) throws SQLException


    在发送之前,一个驱动程序把 JDBC sql 语法转换为它的系统本地的
    SQL 语法;nativeSQL 将返回驱动程序要发送语句的本地形式。



     
    参数:
     
    sql - 一个 SQL 语句,它可以包含一个或多个 '?',参数的位置标志符
     
    返回值:
     
    该语句的本地格式
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    setAutoCommit

    public abstract void setAutoCommit(boolean autoCommit) throws SQLException


    如果一个连接处于自动提交状态,它所有的 SQL 语句将被执行并作为单个事务被提交。否则,它的 SQL 语句将被分为事务组,由 commit() 或
    rollback() 终止。缺省情况下,新建的连接处于自动提交模式。无论下面两种情况哪个先发生都进行提交:语句完成或执行下一条语句。在语句返回一个
    ResultSet 的情况下,语句将在检索完 ResultSet 的最后一行或关闭 ResultSet
    时完成。在复杂的情况下,单条语句可能返回多个结果,和多个输出参数值。在此只有当已经取出所有的结果和参数值后才进行提交。



     
    参数:
     
    autoCommit - 如果为 true 则启动自动提交;否则禁止自动提交。
     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    getAutoCommit

    public abstract boolean getAutoCommit() throws SQLException


    获得当前自动提交状态。



     
    返回值:
     
    自动提交模式的当前状态。
     
    抛出:
    SQLException
     
    如果发生了数据访问错误。
     
    参见:
     
    setAutoCommit



    commit

    public abstract void commit() throws SQLException


    提交从上一次提交 / 回滚操作后的更改,使之成为永久的更改,并释放 Connection 当前保持的任何数据库锁。 只有当禁止自动提交时可以使用该方法。



     
    抛出:
    SQLException
     
    如果发生了数据访问错误。
     
    参见:
     
    setAutoCommit



    rollback

    public abstract void rollback() throws SQLException


    回滚撤消从上一次提交 / 回滚操作后的所有更改,并释放 Connection
    当前保持的任何数据库锁。 只有当禁止自动提交时可以使用该方法。



     
    抛出:
    SQLException
     
    如果发生了数据访问错误。
     
    参见:
     
    setAutoCommit



    close

    public abstract void close() throws SQLException


    在有些情况下,需要立即释放 Connection 的数据库和 JDBC 资源,而不是等待它们被自动释放;close 方法可以进行立即释放。

    注意: 当一个 Connection 由垃圾箱收集时,它被自动关闭。 一定的致命错误也将使 Connection 关闭。



     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    isClosed

    public abstract boolean isClosed() throws SQLException


    检测一个 Connection 是否被关闭。



     
    返回值:
     
    如果连接被关闭则为 true,如果它仍然打开则为 false。
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    getMetaData

    public abstract DatabaseMetaData getMetaData() throws SQLException


    一个 Connection 的数据库提供了描述以下内容的信息,它的表,它支持 SQL 语法,它的存储过程,该连接的能力等等。通过一个
    DatabaxeMetaData 对象可以使用这些信息。



     
    返回值:
     
    该 Connection 的一个 DatabaseMetaData 对象。
     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    setReadOnly

    public abstract void setReadOnly(boolean readOnly) throws SQLException


    可以把一个连接设置为只读模式,作为启动数据库优化的提示。

    注意: 不能在事务执行的中间调用 setReadOnly。



     
    参数:
     
    readOnly - 如果为 true 则启动只读模式;如果为 false 则禁止只读模式。
     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    isReadOnly

    public abstract boolean isReadOnly() throws SQLException


    检测该连接是否在只读状态。



     
    返回值:
     
    如果连接是只读的则为 true。
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    setCatalog

    public abstract void setCatalog(String catalog) throws SQLException


    通过设置一个分类表名,可以选择该 Connection 的数据库的一个子空间。 如果该驱动程序不支持分类表,它将忽略该请求。



     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    getCatalog

    public abstract String getCatalog() throws SQLException


    返回 Connection 的当前分类表名。



     
    返回值:
     
    当前分类表名或 null。
     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    setTransactionIsolation

    public abstract void setTransactionIsolation(int level) throws SQLException


    可以用一个 TRANSACTION_* 值调用该方法,改变事务的隔离级别。

    注意: 不能在事务执行的中间调用 setTransactionIsolation。



     
    参数:
     
    level - 一个具有 TRANSACTION_NONE 异常的 TRANSACTION_* 隔离值;有些数据库不支持其它的值。
    抛出:
    SQLException
     
    如果发生了数据访问错误。
     
    参见:
     
    supportsTransactionIsolationLevel



    getTransactionIsolation

    public abstract int getTransactionIsolation() throws SQLException


    获得该 Connection 的当前事务隔离模式。



     
    返回值:
     
    当前 TRANSACTION_* 模式的值。
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    getWarnings

    public abstract SQLWarning getWarnings() throws SQLException


    返回在该 Connection 上的调用报告的第一个警告。

    注意: 后继的警告将被链接到这个 SQLWarning 上。



     
    返回值:
     
    第一个 SQLWarning 或 null
     
    抛出:
    SQLException
     
    如果发生了数据访问错误。



    clearWarnings

    public abstract void clearWarnings() throws SQLException


    此调用完成之后,以后的 getWarnings 将返回 null,直到为该
    Connection 报告了一个新的警告。



     
    抛出:
    SQLException
     
    如果发生了数据访问错误。




    相关文章
    本页查看次数: