Insérez, lisez, mettez à jour, supprimez, parcourez, importez ou exportez des données dans une table de données à l'aide de la CLI Tablestore.
Prérequis
La CLI Tablestore est installée et les identifiants d'accès sont configurés. Pour plus d'informations, consultez CLI Tablestore.
Une table de données est créée. Pour plus d'informations, consultez Opérations sur les tables de données.
Avant d'exécuter des opérations sur les données, exécutez la commande suivante pour sélectionner la table de données cible :
use -t <tableName>
Insérer des données
Insérez une ligne de données dans une table de données.
put --pk '<pk_values>' --attr '<attr_json>'
|
Paramètre |
Obligatoire |
Description |
|
-k, --pk |
Oui |
Valeurs de clé primaire de la table de données, représentées sous forme de tableau JSON. Important
|
|
-a, --attr |
Oui |
Colonnes d'attributs, représentées sous forme de tableau JSON. Chaque colonne d'attribut contient les champs suivants :
|
|
--condition |
Non |
Condition d'existence de la ligne. La mise à jour conditionnelle est prise en charge. Valeurs valides :
|
|
-i, --input |
Non |
Insère des données à partir d'un fichier de configuration JSON. L'utilisation d'un fichier de configuration dispense de spécifier --pk et --attr. |
Pour insérer des données à partir d'un fichier de configuration, exécutez la commande suivante :
Windows
put -i D:\\localpath\\filename.json
Linux and macOS
put -i /localpath/filename.json
Exemple de fichier de configuration :
{
"PK":{
"Values":["86", 6771]
},
"Attr":{
"Values":[
{"C":"age", "V":32, "TS":1626860801604, "IsInt":true}
]
}
}
Exemples
-
Insérez une ligne. La valeur de la première colonne de clé primaire est « 86 » et celle de la seconde est 6771. La ligne comporte deux colonnes d'attributs : name et country.
put --pk '["86", 6771]' --attr '[{"c":"name", "v":"redchen"}, {"c":"country", "v":"china"}]' -
Insérez des données uniquement si la ligne n'existe pas.
put --pk '["86", 6771]' --attr '[{"c":"name", "v":"redchen"}, {"c":"country", "v":"china"}]' --condition not_exist
Lire des données
Lisez une ligne de données par clé primaire.
Si la ligne spécifiée n'existe pas, un résultat vide est renvoyé.
get --pk '<pk_values>'
|
Paramètre |
Obligatoire |
Description |
|
-k, --pk |
Oui |
Valeurs de clé primaire de la table de données, représentées sous forme de tableau JSON. Le nombre et les types de colonnes de clé primaire doivent correspondre à ceux de la table de données. |
|
-c, --columns |
Non |
Colonnes à lire. Spécifiez les colonnes de clé primaire ou d'attributs, séparées par des virgules. En l'absence de ce paramètre, toutes les colonnes sont renvoyées. |
|
--max_version |
Non |
Nombre maximal de versions de données à lire. |
|
--time_range_start |
Non |
Lit les données dans la plage de numéros de version spécifiée. time_range_start et time_range_end indiquent respectivement les horodatages de début et de fin. La plage est un intervalle semi-ouvert [début, fin). |
|
--time_range_end |
Non |
|
|
--time_range_specific |
Non |
Lit les données d'un numéro de version spécifique. |
|
-o, --output |
Non |
Exporte le résultat de la requête vers un fichier local. |
Exemple
Lisez la ligne dont la première colonne de clé primaire a pour valeur « 86 » et la seconde 6771.
get --pk '["86", 6771]'
Mettre à jour des données
Mettez à jour les colonnes d'attributs d'une ligne dans une table de données.
update --pk '<pk_values>' --attr '<attr_json>'
|
Paramètre |
Obligatoire |
Description |
|
-k, --pk |
Oui |
Valeurs de clé primaire de la table de données, représentées sous forme de tableau JSON. Le nombre et les types de colonnes de clé primaire doivent correspondre à ceux de la table de données. |
|
--attr |
Oui |
Colonnes d'attributs, représentées sous forme de tableau JSON. Chaque colonne d'attribut contient les champs suivants :
|
|
--delete |
Non |
Nom de la colonne d'attribut à supprimer. Utilisez ce paramètre avec |
|
--condition |
Non |
Condition d'existence de la ligne. La mise à jour conditionnelle est prise en charge. Valeurs valides :
|
|
-i, --input |
Non |
Met à jour les données à partir d'un fichier de configuration JSON. L'utilisation d'un fichier de configuration dispense de spécifier --pk et --attr. |
Pour mettre à jour des données à partir d'un fichier de configuration, exécutez la commande suivante :
Windows
update -i D:\\localpath\\filename.json
Linux and macOS
update -i /localpath/filename.json
Le format du fichier de configuration est identique à celui utilisé pour l'insertion de données.
Exemples
-
Mettez à jour la ligne dont la première colonne de clé primaire a pour valeur « 86 » et la seconde 6771.
update --pk '["86", 6771]' --attr '[{"c":"name", "v":"redchen"}, {"c":"country", "v":"china"}]' --condition ignore -
Supprimez la colonne d'attribut aaa de la ligne dont la valeur de clé primaire est « abc ».
update --pk '["abc"]' --delete aaa --attr '[]'
Supprimer des données
Supprimez une ligne de données par clé primaire.
delete --pk '<pk_values>'
|
Paramètre |
Obligatoire |
Description |
|
-k, --pk |
Oui |
Valeurs de clé primaire de la table de données, représentées sous forme de tableau JSON. Le nombre et les types de colonnes de clé primaire doivent correspondre à ceux de la table de données. |
Exemple
Supprimez la ligne dont la première colonne de clé primaire a pour valeur « 86 » et la seconde 6771.
delete --pk '["86", 6771]'
Parcourir des données
Parcourez et récupérez toutes les données ou un nombre spécifié de lignes d'une table de données.
scan --limit <n>
|
Paramètre |
Obligatoire |
Description |
|
--limit |
Non |
Nombre maximal de lignes à renvoyer. En l'absence de ce paramètre, toutes les lignes de la table sont parcourues. |
Exemple
Parcourez et récupérez jusqu'à 10 lignes d'une table de données.
scan --limit 10
Exporter des données
Exportez les données d'une table de données vers un fichier JSON local.
scan -o /localpath/filename.json
|
Paramètre |
Obligatoire |
Description |
|
-o, --output |
Oui |
Chemin du fichier local vers lequel exporter les données. |
|
-c, --columns |
Non |
Colonnes à exporter. Spécifiez les colonnes de clé primaire ou d'attributs, séparées par des virgules. En l'absence de ce paramètre, toutes les colonnes sont exportées. |
|
--max_version |
Non |
Nombre maximal de versions de données à exporter. |
|
--time_range_start |
Non |
Exporte les données dans la plage de numéros de version spécifiée. time_range_start et time_range_end indiquent respectivement les horodatages de début et de fin. La plage est un intervalle semi-ouvert [début, fin). |
|
--time_range_end |
Non |
|
|
--time_range_specific |
Non |
Exporte les données d'un numéro de version spécifique. |
|
--backward |
Non |
Exporte les données par ordre décroissant de clé primaire. |
|
-l, --limit |
Non |
Nombre maximal de lignes à exporter. |
|
-b, --begin |
Non |
Points de début et de fin de la plage d'exportation. La plage de clés primaires est un intervalle semi-ouvert [début, fin). Remarque
|
|
-e, --end |
Non |
Exemples
-
Exportez toutes les données de la table actuelle vers un fichier local nommé mydata.json.
scan -o /tmp/mydata.json -
Exportez uniquement les colonnes uid et name.
scan -o /tmp/mydata.json -c uid,name -
Exportez les données dans une plage de clés primaires spécifiée.
scan -o /tmp/mydata.json -b '["86", 6771]' -e '["86", 6775]'
Importer des données
Importez des données d'un fichier JSON local vers une table de données.
Si le chemin du fichier contient des caractères chinois, l'importation échoue.
import -i /localpath/filename.json
|
Paramètre |
Obligatoire |
Description |
|
-a, --action |
Non |
Mode d'importation. Valeurs valides :
|
|
-i, --input |
Oui |
Chemin vers un fichier de données JSON local. Important
|
|
--ignore_version |
Non |
Ignore la vérification de l'horodatage et utilise l'heure actuelle comme horodatage. |
Format du fichier de données (un enregistrement JSON par ligne) :
{"PK":{"Values":["redchen",0]},"Attr":{"Values":[{"C":"country","V":"china0"},{"C":"name","V":"redchen0"}]}}
{"PK":{"Values":["redchen",1]},"Attr":{"Values":[{"C":"country","V":"china1"},{"C":"name","V":"redchen1"}]}}
Exemples
-
Importez les données du fichier mydata.json dans la table actuelle.
import -i /tmp/mydata.json -
Importez des données en utilisant l'heure actuelle comme horodatage.
import -i /tmp/mydata.json --ignore_version