Sintaksa jezika upita Cassandra (CQL) sliči SQL jeziku.
- Stvori tablicu
- Izmijenite tablicu
- Drop Table
- Skratiti tablicu
Kako stvoriti tablicu
Obitelj stupaca u Cassandri slična je tablici RDBMS. Obitelj stupaca koristi se za pohranu podataka.
Naredba 'Stvori tablicu' koristi se za stvaranje obitelji stupaca u Cassandri.
Sintaksa
Create table KeyspaceName.TableName(ColumnName DataType,ColumnName DataType,ColumnName DataType… Primary key(ColumnName)) with PropertyName=PropertyValue;
- Primarni ključ: Postoje dvije vrste primarnog ključa.
- Pojedinačni primarni ključ: Pojedinačni primarni ključ naveden je sljedećom sintaksom.
Sintaksa
Primary key (ColumnName)
U pojedinačnom primarnom ključu nalazi se samo jedan stupac. Taj se stupac naziva i particijskim ključem. Podaci se dijele na temelju tog stupca. Podaci se šire na različitim čvorovima na temelju particijskog ključa.
- Složeni primarni ključ: Složeni primarni ključ naveden je sljedećom sintaksom.
Sintaksa
Primary key(ColumnName1,ColumnName2… )
U gornjoj sintaksi, ColumnName1 je particijski ključ, a ColumnName2 je Clustering ključ. Podaci će biti podijeljeni na temelju stupcaName1, a podaci će se grupirati na temelju stupcaName2. Klasteriranje je postupak sortiranja podataka na particiji.
- Složeni particioni ključ
Složeni particioni ključ naveden je sljedećom sintaksom.
Sintaksa
Primary Key((ColumnName1,ColumnName2),ColumnName3… ))
U gornjoj sintaksi, ColumnName1 i ColumnName2 su složeni particijski ključ. Podaci će se podijeliti na temelju oba stupca Ime stupca1 i Ime stupca2, a podaci će se grupirati na temelju stupcaName3. Ako imate previše podataka na jednoj particiji. Zatim se koristi složeni particioni ključ. Složeni particioni ključ koristi se za stvaranje više particija za podatke.
- Uz Klauzulu
"S klauzulom" koristi se za specificiranje bilo kojeg svojstva i njegove vrijednosti za definiranu tablicu. Na primjer, ako želite sažeti podatke tablice Cassandre. Svojstvo kompresije možete postaviti specificiranjem vrijednosti svojstva algoritma kompresije u "S klauzulom".
Primjer
Evo izvršenja naredbe 'Stvori tablicu' koja će stvoriti naziv tablice 'Student' u prostoru ključeva 'Sveučilište'.
Nakon uspješnog izvršavanja naredbe 'Stvori tablicu', stvorit će se tablica 'Student' u prostoru ključeva 'Sveučilište' sa stupcima RollNo, Name i dept. RollNo je primarni ključ. RollNo je također particijski ključ. Svi će podaci biti u jednoj particiji.
Cassandra Alter stol
Naredba 'Izmijeni tablicu' koristi se za ispuštanje stupca, dodavanje novog stupca, promjenu naziva stupca, promjenu vrste stupca i promjenu svojstva tablice.
Sintaksa
Slijedi sintaksa naredbe 'Izmijeni tablicu'.
Alter table KeyspaceName.TableName +Alter ColumnName TYPE ColumnDataype |Add ColumnName ColumnDataType |Drop ColumnName |Rename ColumnName To NewColumnName |With propertyName=PropertyValue
Primjer
Evo snimke naredbe 'Izmijeni tablicu' koja će dodati novi stupac u tablicu Student.
Nakon uspješnog izvršavanja naredbe 'Izmijeni tablicu', novi stupac 'Semestar' s tipom podataka 'int' bit će dodan u tablicu Student.
Evo snimke zaslona koja prikazuje ažuriranu tablicu učenika.
Drop Table
Naredba 'Ispuštanje tablice' ispušta određenu tablicu uključujući sve podatke iz prostora ključeva. Prije ispuštanja tablice, Cassandra uzima snimku podataka, a ne shemu, kao sigurnosnu kopiju.
Sintaksa
Drop Table KeyspaceName.TableName
Primjer
Evo snimke izvršene naredbe 'Drop Table' koja će ispustiti tablicu Student iz prostora ključeva 'University'.
Nakon uspješnog izvršavanja naredbe 'Drop Table', tablica Student bit će ispuštena iz sveučilišnog prostora ključeva.
Evo snimke koja prikazuje pogrešku koju je Cassandra vratila kada je pokušala pristupiti studentskoj tablici koja ne postoji.
Skratiti tablicu
Naredba 'Smanji tablicu' uklanja sve podatke iz navedene tablice. Prije skraćivanja podataka, Cassandra uzima snimku podataka kao sigurnosnu kopiju.
Sintaksa
Truncate KeyspaceName.TableName
Primjer
U tablici Student nalaze se tri zapisa. To su zapisi u tablici.
Evo snimke izvršene naredbe 'Smanji tablicu' koja će ukloniti sve podatke iz tablice Student.
Nakon uspješnog izvršavanja naredbe 'Skratiti tablicu', svi će se podaci ukloniti iz tablice Student.
Evo snimke stanja baze podataka u kojoj u tablici Student nema zapisa.