SQLiteDatabase.ExecSQL Metode

Definisi

Overload

Nama Deskripsi
ExecSQL(String)

Jalankan satu pernyataan SQL yang BUKAN SELECT atau pernyataan SQL lainnya yang mengembalikan data.

ExecSQL(String, Object[])

Jalankan satu pernyataan SQL yang BUKAN SELECT/INSERT/UPDATE/DELETE.

ExecSQL(String)

Jalankan satu pernyataan SQL yang BUKAN SELECT atau pernyataan SQL lainnya yang mengembalikan data.

[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

Parameter

sql
String

pernyataan SQL yang akan dijalankan. Beberapa pernyataan yang dipisahkan oleh titik koma tidak didukung.

Atribut

Pengecualian

jika string SQL tidak valid

Keterangan

Jalankan satu pernyataan SQL yang BUKAN SELECT atau pernyataan SQL lainnya yang mengembalikan data.

Ini tidak memiliki cara untuk mengembalikan data apa pun (seperti jumlah baris yang terpengaruh). Sebagai gantinya, Anda dianjurkan untuk menggunakan #insert(String, String, ContentValues), , #update(String, ContentValues, String, String[])et al, jika memungkinkan.

Saat menggunakan #enableWriteAheadLogging(), journal_mode dikelola secara otomatis oleh kelas ini. Jadi, jangan atur journal_mode menggunakan pernyataan "PRAGMA journal_mode'value<>" jika aplikasi Anda menggunakan#enableWriteAheadLogging()

Perhatikan bahwa PRAGMA nilai yang berlaku per koneksi seharusnya <>tidak< dikonfigurasi> menggunakan metode ini; Anda harus menggunakan #execPerConnectionSQL untuk memastikan bahwa nilai tersebut diterapkan secara seragam ke semua koneksi saat ini dan di masa mendatang.

Java dokumentasi untuk android.database.sqlite.SQLiteDatabase.execSQL(java.lang.String).

Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.

Berlaku untuk

ExecSQL(String, Object[])

Jalankan satu pernyataan SQL yang BUKAN SELECT/INSERT/UPDATE/DELETE.

[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

Parameter

sql
String

pernyataan SQL yang akan dijalankan. Beberapa pernyataan yang dipisahkan oleh titik koma tidak didukung.

bindArgs
Object[]

hanya byte[], String, Long dan Double yang didukung dalam bindArgs.

Atribut

Pengecualian

jika string SQL tidak valid

Keterangan

Jalankan satu pernyataan SQL yang BUKAN SELECT/INSERT/UPDATE/DELETE.

Untuk pernyataan INSERT, gunakan salah satu hal berikut ini sebagai gantinya. <ul><li#insert(String, String, ContentValues)<>/li><#insertOrThrow(String, String, ContentValues)></li><li#insertWithOnConflict(String, String, ContentValues, int)<>/li></ul>

Untuk pernyataan UPDATE, gunakan salah satu hal berikut sebagai gantinya. <ul><li>#update(String, ContentValues, String, String[])</li#updateWithOnConflict(String, ContentValues, String, String[], int)<<>>/li></ul>

Untuk pernyataan DELETE, gunakan salah satu hal berikut ini sebagai gantinya. <ul><li><#delete(String, String, String[])/li></ul>

Misalnya, berikut ini adalah kandidat yang baik untuk menggunakan metode ini: <ul><li>ALTER TABLE</li>><CREATE atau DROP table / trigger / view / index / virtual table</li<>>REINDEX</li li><>RELEASE</li SAVEPOINT<>></li li><>PRAGMA yang tidak mengembalikan data</li></ul>

Saat menggunakan #enableWriteAheadLogging(), journal_mode dikelola secara otomatis oleh kelas ini. Jadi, jangan atur journal_mode menggunakan pernyataan "PRAGMA journal_mode'value<>" jika aplikasi Anda menggunakan#enableWriteAheadLogging()

Perhatikan bahwa PRAGMA nilai yang berlaku per koneksi seharusnya <>tidak< dikonfigurasi> menggunakan metode ini; Anda harus menggunakan #execPerConnectionSQL untuk memastikan bahwa nilai tersebut diterapkan secara seragam ke semua koneksi saat ini dan di masa mendatang.

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

Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.

Berlaku untuk