IConnection.PrepareStatement 方法

定义

重载

PrepareStatement(String)

创建一个 PreparedStatement 对象,用于将参数化 SQL 语句发送到数据库。

PrepareStatement(String, Int32)

创建一个默认 PreparedStatement 对象,该对象能够检索自动生成的密钥。

PrepareStatement(String, Int32[])

创建一个 PreparedStatement 默认对象,该对象能够返回由给定数组指定的自动生成的键。

PrepareStatement(String, String[])

创建一个 PreparedStatement 默认对象,该对象能够返回由给定数组指定的自动生成的键。

PrepareStatement(String, Int32, Int32)

创建一个 PreparedStatement 对象,该对象将生成 ResultSet 具有给定类型和并发的对象。

PrepareStatement(String, Int32, Int32, Int32)

创建一个 PreparedStatement 对象,该对象将生成 ResultSet 具有给定类型、并发性和可保持性的对象。

PrepareStatement(String)

创建一个 PreparedStatement 对象,用于将参数化 SQL 语句发送到数据库。

[Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_Handler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IPreparedStatement? PrepareStatement (string? sql);
[<Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_Handler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member PrepareStatement : string -> Java.Sql.IPreparedStatement

参数

sql
String

可能包含一个或多个“?”的 SQL 语句IN 参数占位符

返回

包含预编译 SQL 语句的新默认 PreparedStatement 对象

属性

例外

如果访问数据库时遇到问题,

注解

创建一个 PreparedStatement 对象,用于将参数化 SQL 语句发送到数据库。

可以预编译并存储包含或不使用 IN 参数的 PreparedStatement SQL 语句。 然后,可以使用此对象多次有效地执行此语句。

<B>注意:</B> 此方法已针对处理受益于预编译的参数 SQL 语句进行优化。 如果驱动程序支持预编译,该方法 prepareStatement 会将语句发送到数据库进行预编译。 某些驱动程序可能不支持预编译。 在这种情况下,在执行对象之前 PreparedStatement ,该语句可能不会发送到数据库。 这对用户没有直接影响;但是,它确实会影响哪些方法引发某些 SQLException 对象。

使用返回 PreparedStatement 的对象创建的结果集默认为类型 TYPE_FORWARD_ONLY ,并发级别为 CONCUR_READ_ONLY. 创建的结果集的可保留性可以通过调用 #getHoldability确定。

适用于 . 的 java.sql.Connection.prepareStatement(java.lang.String)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

PrepareStatement(String, Int32)

创建一个默认 PreparedStatement 对象,该对象能够检索自动生成的密钥。

[Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;I)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_IHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IPreparedStatement? PrepareStatement (string? sql, int autoGeneratedKeys);
[<Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;I)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_IHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member PrepareStatement : string * int -> Java.Sql.IPreparedStatement

参数

sql
String

可能包含一个或多个“?”的 SQL 语句IN 参数占位符

autoGeneratedKeys
Int32

指示是否应返回自动生成的密钥的标志;或Statement.RETURN_GENERATED_KEYSStatement.NO_GENERATED_KEYS

返回

一个新 PreparedStatement 对象,包含预编译的 SQL 语句,该语句将具有返回自动生成的密钥的功能

属性

例外

如果访问数据库时遇到问题,

注解

创建一个默认 PreparedStatement 对象,该对象能够检索自动生成的密钥。 给定常量告知驱动程序是否应使自动生成的密钥可供检索。 如果 SQL 语句不是 INSERT 语句,或者 SQL 语句能够返回自动生成的键(此类语句列表特定于供应商),则忽略此参数。

<B>注意:</B> 此方法已针对处理受益于预编译的参数 SQL 语句进行优化。 如果驱动程序支持预编译,该方法 prepareStatement 会将语句发送到数据库进行预编译。 某些驱动程序可能不支持预编译。 在这种情况下,在执行对象之前 PreparedStatement ,该语句可能不会发送到数据库。 这对用户没有直接影响;但是,它确实会影响哪些方法引发某些 SQLExceptions。

使用返回 PreparedStatement 的对象创建的结果集默认为类型 TYPE_FORWARD_ONLY ,并发级别为 CONCUR_READ_ONLY. 创建的结果集的可保留性可以通过调用 #getHoldability确定。

在 1.4 中添加。

适用于 . 的 java.sql.Connection.prepareStatement(java.lang.String, int)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

PrepareStatement(String, Int32[])

创建一个 PreparedStatement 默认对象,该对象能够返回由给定数组指定的自动生成的键。

[Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;[I)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_arrayIHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IPreparedStatement? PrepareStatement (string? sql, int[]? columnIndexes);
[<Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;[I)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_arrayIHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member PrepareStatement : string * int[] -> Java.Sql.IPreparedStatement

参数

sql
String

可能包含一个或多个“?”的 SQL 语句IN 参数占位符

columnIndexes
Int32[]

列索引数组,指示应从插入的行或行返回的列

返回

包含预编译语句的新 PreparedStatement 对象,能够返回由给定列索引数组指定的自动生成的键

属性

例外

如果访问数据库时遇到问题,则为 。

注解

创建一个 PreparedStatement 默认对象,该对象能够返回由给定数组指定的自动生成的键。 此数组包含目标表中列的索引,这些列包含应提供的自动生成的键。 如果 SQL 语句不是 INSERT 语句,或者 SQL 语句能够返回自动生成的密钥(此类语句列表特定于供应商),驱动程序将忽略该数组。

具有或不使用 IN 参数的 SQL 语句可以预编译并存储在对象 PreparedStatement 中。 然后,可以使用此对象多次有效地执行此语句。

<B>注意:</B> 此方法已针对处理受益于预编译的参数 SQL 语句进行优化。 如果驱动程序支持预编译,该方法 prepareStatement 会将语句发送到数据库进行预编译。 某些驱动程序可能不支持预编译。 在这种情况下,在执行对象之前 PreparedStatement ,该语句可能不会发送到数据库。 这对用户没有直接影响;但是,它确实会影响哪些方法引发某些 SQLExceptions。

使用返回 PreparedStatement 的对象创建的结果集默认为类型 TYPE_FORWARD_ONLY ,并发级别为 CONCUR_READ_ONLY. 创建的结果集的可保留性可以通过调用 #getHoldability确定。

在 1.4 中添加。

适用于 . 的 java.sql.Connection.prepareStatement(java.lang.String, int[])Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

PrepareStatement(String, String[])

创建一个 PreparedStatement 默认对象,该对象能够返回由给定数组指定的自动生成的键。

[Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;[Ljava/lang/String;)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_arrayLjava_lang_String_Handler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IPreparedStatement? PrepareStatement (string? sql, string[]? columnNames);
[<Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;[Ljava/lang/String;)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_arrayLjava_lang_String_Handler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member PrepareStatement : string * string[] -> Java.Sql.IPreparedStatement

参数

sql
String

可能包含一个或多个“?”的 SQL 语句IN 参数占位符

columnNames
String[]

列名数组,指示应从插入的行或行返回的列

返回

一个新 PreparedStatement 对象,包含预编译的语句,能够返回由给定列名称数组指定的自动生成的键

属性

例外

如果访问数据库时遇到问题,则为 。

注解

创建一个 PreparedStatement 默认对象,该对象能够返回由给定数组指定的自动生成的键。 此数组包含目标表中包含应返回的自动生成的键的列的名称。 如果 SQL 语句不是 INSERT 语句,或者 SQL 语句能够返回自动生成的密钥(此类语句列表特定于供应商),驱动程序将忽略该数组。

具有或不使用 IN 参数的 SQL 语句可以预编译并存储在对象 PreparedStatement 中。 然后,可以使用此对象多次有效地执行此语句。

<B>注意:</B> 此方法已针对处理受益于预编译的参数 SQL 语句进行优化。 如果驱动程序支持预编译,该方法 prepareStatement 会将语句发送到数据库进行预编译。 某些驱动程序可能不支持预编译。 在这种情况下,在执行对象之前 PreparedStatement ,该语句可能不会发送到数据库。 这对用户没有直接影响;但是,它确实会影响哪些方法引发某些 SQLExceptions。

使用返回 PreparedStatement 的对象创建的结果集默认为类型 TYPE_FORWARD_ONLY ,并发级别为 CONCUR_READ_ONLY. 创建的结果集的可保留性可以通过调用 #getHoldability确定。

在 1.4 中添加。

适用于 . 的 java.sql.Connection.prepareStatement(java.lang.String, java.lang.String[])Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

PrepareStatement(String, Int32, Int32)

创建一个 PreparedStatement 对象,该对象将生成 ResultSet 具有给定类型和并发的对象。

[Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;II)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_IIHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IPreparedStatement? PrepareStatement (string? sql, int resultSetType, int resultSetConcurrency);
[<Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;II)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_IIHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member PrepareStatement : string * int * int -> Java.Sql.IPreparedStatement

参数

sql
String

String 发送到数据库的 SQL 语句的对象;可能包含一个或多个“?”IN 参数

resultSetType
Int32

结果集类型;其中一个ResultSet.TYPE_FORWARD_ONLYResultSet.TYPE_SCROLL_INSENSITIVEResultSet.TYPE_SCROLL_SENSITIVE

resultSetConcurrency
Int32

并发类型;或ResultSet.CONCUR_READ_ONLYResultSet.CONCUR_UPDATABLE

返回

一个新的 PreparedStatement 对象,其中包含预编译的 SQL 语句,该语句将生成 ResultSet 具有给定类型和并发的对象

属性

例外

如果访问数据库时遇到问题,则为 。

注解

创建一个 PreparedStatement 对象,该对象将生成 ResultSet 具有给定类型和并发的对象。 此方法与 prepareStatement 上述方法相同,但它允许重写默认结果集类型和并发。 创建的结果集的可保留性可以通过调用 #getHoldability确定。

已在 1.2 中添加。

适用于 . 的 java.sql.Connection.prepareStatement(java.lang.String, int, int)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

PrepareStatement(String, Int32, Int32, Int32)

创建一个 PreparedStatement 对象,该对象将生成 ResultSet 具有给定类型、并发性和可保持性的对象。

[Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;III)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_IIIHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IPreparedStatement? PrepareStatement (string? sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability);
[<Android.Runtime.Register("prepareStatement", "(Ljava/lang/String;III)Ljava/sql/PreparedStatement;", "GetPrepareStatement_Ljava_lang_String_IIIHandler:Java.Sql.IConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member PrepareStatement : string * int * int * int -> Java.Sql.IPreparedStatement

参数

sql
String

String 发送到数据库的 SQL 语句的对象;可能包含一个或多个“?”IN 参数

resultSetType
Int32

下列 ResultSet 常量之一: ResultSet.TYPE_FORWARD_ONLYResultSet.TYPE_SCROLL_INSENSITIVEResultSet.TYPE_SCROLL_SENSITIVE

resultSetConcurrency
Int32

下列ResultSet常量之一: ResultSet.CONCUR_READ_ONLYResultSet.CONCUR_UPDATABLE

resultSetHoldability
Int32

下列ResultSet常量之一: ResultSet.HOLD_CURSORS_OVER_COMMITResultSet.CLOSE_CURSORS_AT_COMMIT

返回

包含预编译的 SQL 语句的新 PreparedStatement 对象,它将生成 ResultSet 具有给定类型、并发性和可保留性的对象

属性

例外

如果访问数据库时遇到问题,则为 。

注解

创建一个 PreparedStatement 对象,该对象将生成 ResultSet 具有给定类型、并发性和可保持性的对象。

此方法与 prepareStatement 上述方法相同,但它允许重写默认结果集类型、并发性和可保留性。

在 1.4 中添加。

适用于 . 的 java.sql.Connection.prepareStatement(java.lang.String, int, int, int)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于