SQLiteDatabase.ExecSQL Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
ExecSQL(String, Object[]) |
Exécutez une instruction SQL unique qui n’est PAS une instruction SELECT/INSERT/UPDATE/DELETE. |
ExecSQL(String) |
Exécutez une instruction SQL unique qui n’est PAS une instruction SELECT ou toute autre instruction SQL qui retourne des données. |
ExecSQL(String, Object[])
Exécutez une instruction SQL unique qui n’est PAS une instruction 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
Paramètres
- sql
- String
instruction SQL à exécuter. Les instructions multiples séparées par des points-virgules ne sont pas prises en charge.
- bindArgs
- Object[]
seul byte[], String, Long et Double sont pris en charge dans bindArgs.
- Attributs
Exceptions
si la chaîne SQL n’est pas valide
Remarques
Exécutez une instruction SQL unique qui n’est PAS une instruction SELECT/INSERT/UPDATE/DELETE.
Pour les instructions INSERT, utilisez l’une des instructions suivantes à la place. <ul><li><#insert(String, String, ContentValues)
/li><#insertOrThrow(String, String, ContentValues)
<>/li/li>#insertWithOnConflict(String, String, ContentValues, int)
<<>/li/li></ul>
Pour les instructions UPDATE, utilisez l’une des instructions suivantes à la place. <ul><li><#update(String, ContentValues, String, String[])
/li>>#updateWithOnConflict(String, ContentValues, String, String[], int)
<</li/li></ul>
Pour les instructions DELETE, utilisez l’une des instructions suivantes à la place. <ul><li>#delete(String, String, String[])
</li></ul>
Par exemple, voici de bons candidats pour utiliser cette méthode : <ul<>li>ALTER TABLE</li li><>CREATE ou DROP table / trigger / view / index / virtual table</li li><>REINDEX</li li><LI>RELEASE</li><li>SAVEPOINT</li><li>PRAGMA qui ne retourne aucune donnée</li/li></ul>
Lors de l’utilisation #enableWriteAheadLogging()
, journal_mode est automatiquement géré par cette classe. Par conséquent, ne définissez pas journal_mode à l’aide de l’instruction « PRAGMA journal_mode’value<> » si votre application utilise#enableWriteAheadLogging()
Notez que les PRAGMA
valeurs qui s’appliquent par connexion doivent <>être<> configurées à l’aide de cette méthode ; vous devez plutôt vous #execPerConnectionSQL
assurer qu’elles sont appliquées uniformément à toutes les connexions actuelles et futures.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.
S’applique à
ExecSQL(String)
Exécutez une instruction SQL unique qui n’est PAS une instruction SELECT ou toute autre instruction SQL qui retourne des données.
[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
Paramètres
- sql
- String
instruction SQL à exécuter. Les instructions multiples séparées par des points-virgules ne sont pas prises en charge.
- Attributs
Exceptions
si la chaîne SQL n’est pas valide
Remarques
Exécutez une instruction SQL unique qui n’est PAS une instruction SELECT ou toute autre instruction SQL qui retourne des données.
Il n’a aucun moyen de retourner des données (telles que le nombre de lignes affectées). Au lieu de cela, vous êtes encouragé à utiliser #insert(String, String, ContentValues)
, #update(String, ContentValues, String, String[])
et al, lorsque cela est possible.
Lors de l’utilisation #enableWriteAheadLogging()
, journal_mode est automatiquement géré par cette classe. Par conséquent, ne définissez pas journal_mode à l’aide de l’instruction « PRAGMA journal_mode’value<> » si votre application utilise#enableWriteAheadLogging()
Notez que les PRAGMA
valeurs qui s’appliquent par connexion doivent <>être<> configurées à l’aide de cette méthode ; vous devez plutôt vous #execPerConnectionSQL
assurer qu’elles sont appliquées uniformément à toutes les connexions actuelles et futures.
Documentation Java pour android.database.sqlite.SQLiteDatabase.execSQL(java.lang.String)
.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.