Dernière mise à jour le .
- Documentation
- >
- Module
- >
- JSQL
- >
- selectFrom
JSQL.selectFrom
Insère des données en base de données.
Synthaxe
JSQL.selectFrom(dbName, desc[, version]);
Si vous êtes amenés à insérer, supprimer ou modifier régulièrement des données d'une base de données, vous pouvez utiliser les méthodes fournies par la méthode
JSQL
.
Des gains de performance pourront être observés du fait de la non-recherche de la version de la base de données à chaque manipulation.
Où:
-
dbName
: nom de la base de données à laquelle il faut insérer des données; -
desc
: objet définissant la sélection tel que:-
from
: table depuis laquelle les données doivent être sélectionnées. Dans l'API IndexedDB, on parle de magasin (store) et non de table. -
colum
[] ou : liste des colonnes à retourner ou*
pour retourner toutes les colonnes; -
offset
Facultatif: numéro de ligne depuis laquelle les données trouvées doivent être retournées, par défaut0
; -
limit
Facultatif: nombre de ligne à retourner, par défautInfinity
; -
where
ou : condition de récupération des données. Si la valeur est un objet, celui-ci doit contenir être sous la forme:-
type
valantAND
ouOR
: indique que les conditions doivent être traités comme des ET (AND
) ou comme des OU (OR
); -
condition
[ ou ]: liste de conditions à appliquer où chacune est soit sous la forme d'un tableau tel que:-
[0] ou : première valeur de la condition à comparer. Si la valeur est un tableau, la première case de celui-ci est une chaine représentant la table de laquelle la seconde case, représentant le nom de la colonne, doit être sélectionnée;
-
[1] : un des opérateurs de comparaison parmis:
=
,!=
,>
,>=
,,
;
-
[2] ou : seconde valeur de la condition à comparer. Si la valeur est un tableau, la première case de celui-ci est une chaine représentant la table de laquelle la seconde case, représentant le nom de la colonne, doit être sélectionnée.
soit sous la forme d'un objet qui suit le même fonctionnement que
where
. -
si la valeur est un tableau, les conditions qu'il contient seront traitées comme des ET.
-
-
-
version
Facultatif: version de la base de données à utiliser, sous format système. Reportez-vous à la section Versionnage et délais maximum de transaction pour plus de détails sur les formats des versions. Par défaut, la version retournée par la méthodegetDatabaseVersion
sera utilisée.
Valeur de retour
Une promesse (Promise
) est retournée.
Celle-ci sera résolue lorsque la requête de sélection sera terminée.
La valeur fournie comme valeur de résolution sera un tableau si l'opération à réussie, qui contiendra alors les résultats,
ou false
dans le cas contraire.
Exemple
Exemple 1: Sélection de données
L'exemple ci-dessous sélectionne des données en base de données.
(async function() {
/* la base est supposée créer */
const select = await JSQL.selectFrom("DB-TEST", {
from : "myTable", // Pour l'API IndexedDB, on parle normalement de magasin ("store") et non de table
colum : ["id"], // On sélectionne uniquement la colonne "id"
offset : 10, // Selection des résultats à partir de la ligne 10
limit : 20, // Jusqu'à la ligne 20, 10 lignes seront donc retournées
where : { // where peut aussi être directement un tableau, qui sera traité comme un tableau de "AND"
type : "AND", // Le type peut être "AND" ou "OR"
condition : [
[["t1", "id"], "=", 10],
[["t1", "id"], ">", 20]
]
}
});
if(select) {
alert("Selection réussie !");
// select est un tableau contenant les résultats
}
else {
alert("Erreur !");
}
})();
Exemple 2: condition ET
where : [
[["t1", "id"], "=", 10],
[["t1", "id"], ">", 20]
]
// ===
where : {
type : "AND",
condition : [
[["t1", "id"], "=", 10],
[["t1", "id"], ">", 20]
]
}
Exemple 3: condition combiné
where : {
type : "OR",
condition : [
[["t1", "id"], "=", 10],
{
type : "AND",
condition : [
[["t1", "id"], "=", ["t1", "id"]] // retournera toujours true
]
}
]
}
Compatibilité
La prise en charge des Promise
est nécessaire ainsi que le support de l'API IndexedDB.