Le langage CQL
Syntaxe : Create keyspace
CREATE KEYSPACE <keyspace_name> WITH REPLICATION = { 'class' : '<class de la strategie>', 'replication_factor' : <nb réplication> };
class : Strétagie de gestion des uuid
replication_factor : Nombre de noeuds sur lesquels les données doivent être répliquées.
Exemple :
CREATE KEYSPACE test WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
Syntaxe : Se positionner dans un keyspace
USE <keyspace_name> ;
Exemple :
USE test ;
Syntaxe : Supprimer un keyspace
DROP KEYSPACE <keyspace_name> ;
Exemple :
DROP KEYSPACE test ;
Syntaxe : Création d'une column family avec une clé primaire naturelle
CREATE TABLE <table> {
champs1 type,
champs2 type,
....
PRIMARY KEY(champs1)
} ;
Exemple :
CREATE TABLE livre (
isbn varchar,
titre varchar,
PRIMARY KEY(isbn));
Syntaxe : Création d'une column family avec une clé primaire artificielle
CREATE TABLE <table> {
id uuid,
champs2 type,
....
PRIMARY KEY(id)
} ;
Exemple :
CREATE TABLE livre (
id uuid,
isbn varchar,
titre varchar,
PRIMARY KEY(id));
Syntaxe : Ajouter une colonne
ALTER TABLE <table> ADD <column type> ;
Exemple :
ALTER TABLE livre ADD auteur VARCHAR ;
Syntaxe : Supprimer une colonne
ALTER TABLE <table> DROP <column type> ;
Exemple :
ALTER TABLE livre DROP auteur VARCHAR ;
Syntaxe : Supprimer une column family
DROP COLUMNFAMILY <table> ;
Exemple :
DROP COLUMNFAMILY livre ;
Syntaxe : Inserer une ligne
INSERT INTO <table>(<colonnes....>) VALUES (<Valeurs...>);
Attention :
La clé primaire doit obligatoirement être insérée
Exemple : Insertion avec une clé primaire naturelle
INSERT INTO livre (isbn, titre) VALUES ('12548-5698', 'Le joueur d'échec');
Exemple : Insertion avec une clé primaire composite
INSERT INTO livre (id, isbn, titre) VALUES (uuid(), '12548-5698', 'Le joueur d'échec') ;
On peut aussi utiliser des timeuuid, dont le calcul est basé sur l'heure.
INSERT INTO livre (id, isbn, titre) VALUES (now(), '12548-5698', 'Le joueur d'échec');
Attention :
Les opérations de delete et update doivent être faites grâce à la clé primaire.
Syntaxe : Supprimer une ligne
DELETE FROM Persons WHERE <key> = <value>;
Exemple :
DELETE FROM livre WHERE isbn = '1258-5874';
Syntaxe : Modifier une ligne
UPDATE livre SET titre = 'Le rouge et le noir' WHERE <key> = <value>;
Exemple :
UPDATE livre SET titre = 'Le rouge et le noir' WHERE isbn = '1258-5874';
Syntaxe : Effectuer une requete
SELECT <key_column> FROM <table>;
Attention :
L'opération SELECT ne s'effectue que sur les colonnes clés, ou bien sur les colonnes indexées.