PartiQL

PartiQL est le langage de requête compatible SQL de DynamoDB. Bascule n’importe quel onglet de table en mode PartiQL (⌘⇧M) pour écrire directement des instructions SELECT, INSERT, UPDATE et DELETE au lieu de cliquer sur des pastilles de filtre.

Basculer un onglet en mode PartiQL lance automatiquement le scan par défaut SELECT * FROM "table" — l’équivalent direct d’ouvrir la table dans la vue visuelle. Une fois que tu édites l’instruction, l’exécuter dépend de toi : appuie sur ⌘↩ pour exécuter. Les résultats arrivent en flux, et Charger plus récupère les pages suivantes.

SELECT * FROM "my-table" WHERE pk = 'USER#42' AND begins_with(sk, 'ORDER#')
L’éditeur PartiQL avec une instruction SELECT, le menu des modèles, et les résultats streamés en dessous.
L’éditeur PartiQL avec une instruction SELECT, le menu des modèles, et les résultats streamés en dessous.

PartiQL n’est pas du SQL

Le PartiQL de DynamoDB est un sous-ensemble délibéré. L’éditeur analyse ta requête à mesure que tu tapes et signale les constructions que DynamoDB n’exécutera pas — généralement avec une correction rapide en un clic. Les pièges courants :

  • IN utilise des crochets, pas des parenthèsesWHERE id IN ['a', 'b'], pas ('a', 'b'). La correction rapide la réécrit. Le linter avertit aussi quand la liste dépasse les plafonds de DynamoDB (50 valeurs sur une colonne de clé de partition, 100 sur une colonne hors clé) avant que le serveur ne la rejette.
  • Pas de clause LIMIT — la taille de page est un contrôle d’onglet, pas du SQL. Utilise Charger plus.
  • Pas de JOIN, GROUP BY, HAVING, agrégats, sous-requêtes, UNION ni CTE. Pour ça, ouvre un onglet Workbench — le linter t’y oriente.
  • LIKE → fonctionLIKE '%foo%' devient contains(col, 'foo'), 'foo%' devient begins_with(col, 'foo'). Correction rapide proposée.
  • IS NULL / IS NOT NULLattribute_not_exists(col) / attribute_exists(col). Correction rapide proposée (attention au mapping inverse).
  • Littéraux chaîne entre guillemets simples'value', pas "value". Les guillemets doubles désignent un identifiant.

Le popover aide au format à côté du bouton Run liste ces points inline chaque fois que tu as besoin d’un rappel.

Modèles et requêtes enregistrées

Le menu Requêtes dépose des instructions prêtes à l’emploi dans l’éditeur, résolues sur les vraies clés de la table active et une valeur échantillonnée — donc un modèle SELECT arrive déjà en référençant ta clé de partition, pas un placeholder. Tabule à travers les trous surlignés pour remplir le reste.

Conserve une instruction que tu réutiliseras avec le bouton Enregistrer — tes requêtes enregistrées vivent dans le même menu, aux côtés des modèles, prêtes à s’exécuter sur n’importe quelle table. Le Workbench et PartiQL gardent des bibliothèques séparées, puisqu’ils parlent des langages de requête différents.

Modèles d’écriture

Les modèles INSERT / UPDATE / DELETE utilisent exprès des clés synthétiques DEMO-*, pour qu’en exécuter un d’emblée ne puisse pas modifier accidentellement une vraie ligne. Ils sont conçus pour être exécutés dans l’ordre — insérer, puis mettre à jour, puis supprimer le même élément de démo — et tu édites les clés pour viser des données réelles.

Historique

Chaque requête exécutée est enregistrée dans un historique par mode (séparé de celui du Workbench). Rouvre le menu d’historique pour restaurer une instruction précédente dans l’éditeur — y compris les exécutions échouées, pour que tu puisses corriger et réessayer.

Mis à jour