SQLiteDatabase.ExecSQL 方法

定義

多載

名稱 Description
ExecSQL(String)

執行一個不是 SELECT 或其他回傳資料的 SQL 陳述式。

ExecSQL(String, Object[])

執行一個不是 SELECT/INSERT/UPDATE/DELETE 的 SQL 語句。

ExecSQL(String)

執行一個不是 SELECT 或其他回傳資料的 SQL 陳述式。

[Android.Runtime.Register("execSQL", "(Ljava/lang/String;)V", "GetExecSQL_Ljava_lang_String_Handler")]
public virtual void ExecSQL(string? sql);
[<Android.Runtime.Register("execSQL", "(Ljava/lang/String;)V", "GetExecSQL_Ljava_lang_String_Handler")>]
abstract member ExecSQL : string -> unit
override this.ExecSQL : string -> unit

參數

sql
String

要執行的 SQL 陳述句。 不支援多重以分號分隔的陳述。

屬性

例外狀況

若 SQL 字串無效

備註

執行一個不是 SELECT 或其他回傳資料的 SQL 陳述式。

它無法回傳任何資料(例如受影響的列數)。 相反地,建議你盡可能使用 #insert(String, String, ContentValues)#update(String, ContentValues, String, String[])等。

使用 #enableWriteAheadLogging()時,journal_mode會自動由此類別管理。 所以,如果你的應用程式使用 “PRAGMA journal_mode'value” 陳述式,請不要用「PRAGMA '<value>」語句設定 journal_mode #enableWriteAheadLogging()

請注意,PRAGMA針對每個連線適用的值,不應<使用此方法配置 em></em>;你應該用 來#execPerConnectionSQL確保它們均勻套用於所有現有及未來的連線。

Java 文件 android.database.sqlite.SQLiteDatabase.execSQL(java.lang.String)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

ExecSQL(String, Object[])

執行一個不是 SELECT/INSERT/UPDATE/DELETE 的 SQL 語句。

[Android.Runtime.Register("execSQL", "(Ljava/lang/String;[Ljava/lang/Object;)V", "GetExecSQL_Ljava_lang_String_arrayLjava_lang_Object_Handler")]
public virtual void ExecSQL(string? sql, Java.Lang.Object[]? bindArgs);
[Android.Runtime.Register("execSQL", "(Ljava/lang/String;[Ljava/lang/Object;)V", "GetExecSQL_Ljava_lang_String_arrayLjava_lang_Object_Handler")]
public virtual void ExecSQL(string sql, Java.Lang.Object[] bindArgs);
[<Android.Runtime.Register("execSQL", "(Ljava/lang/String;[Ljava/lang/Object;)V", "GetExecSQL_Ljava_lang_String_arrayLjava_lang_Object_Handler")>]
abstract member ExecSQL : string * Java.Lang.Object[] -> unit
override this.ExecSQL : string * Java.Lang.Object[] -> unit

參數

sql
String

要執行的 SQL 陳述句。 不支援多重以分號分隔的陳述。

bindArgs
Object[]

bindArg 僅支援位元組[]、字串、長字串和雙倍。

屬性

例外狀況

若 SQL 字串無效

備註

執行一個不是 SELECT/INSERT/UPDATE/DELETE 的 SQL 語句。

對於 INSERT 語句,請使用以下任一種。 <烏爾><李<#insert(String, String, ContentValues)>/李><李<>#insertOrThrow(String, String, ContentValues)/李><李#insertWithOnConflict(String, String, ContentValues, int)<>/李/烏爾><>

對於 UPDATE 語句,請改用以下任一。 <烏爾><·李><#update(String, ContentValues, String, String[])/李<>李<#updateWithOnConflict(String, ContentValues, String, String[], int)>/李/烏><爾>

對於 DELETE 語句,請改用以下任一。 <烏爾><里><#delete(String, String, String[])/里></烏爾>

例如,以下是使用此方法的良好候選範例:ul>li ALTER TABLE</li<>li CREATE>或 DROP table / trigger / view / index / virtual table</li<>li li>REINDEX</li<>li>LI RELEASE/<li<>li SAVEPOINT>/<li><li>返回無資料</li<>/ul 的 PRAGMA><<>

使用 #enableWriteAheadLogging()時,journal_mode會自動由此類別管理。 所以,如果你的應用程式使用 “PRAGMA journal_mode'value” 陳述式,請不要用「PRAGMA '<value>」語句設定 journal_mode #enableWriteAheadLogging()

請注意,PRAGMA針對每個連線適用的值,不應<使用此方法配置 em></em>;你應該用 來#execPerConnectionSQL確保它們均勻套用於所有現有及未來的連線。

Java 文件 android.database.sqlite.SQLiteDatabase.execSQL(java.lang.String, java.lang.Object[])

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於