Cassandra Query Language (CQL): Beszúrás, frissítés, törlés (példa)

Ebben a cikkben megtudhatja,

  • Adatok beillesztése
  • Adatok feltöltése
  • Adatok frissítése
  • Adatok törlése
  • Cassandra Hol záradék

Adatok beillesztése

A „Beszúrás” parancs a Cassandra oszlopokba sor formában írja az adatokat. Csak azokat az oszlopokat fogja tárolni, amelyeket a felhasználó adott meg. Feltétlenül csak az elsődleges kulcs oszlopot kell megadnia.

Nem foglal helyet a nem megadott értékeknél. A beszúrás után nem adunk eredményt.

Szintaxis

Insert into KeyspaceName.TableName(ColumnName1, ColumnName2, ColumnName3… )values (Column1Value, Column2Value, Column3Value… )

Példa

Ez a pillanatkép a végrehajtott 'Insert into' parancsról, amely egy rekordot illeszt be a Cassandra 'Student' táblába.

Insert into University.Student(RollNo,Name,dept,Semester) values(2,'Michael','CS', 2);

Az 'Insert Into' parancs sikeres végrehajtása után egy sort beillesztenek a Cassandra táblába.

Itt látható az aktuális adatbázis-állapot pillanatképe.

Adatok feltöltése

Cassandra felfordul. Az Upsert azt jelenti, hogy a Cassandra beilleszt egy sort, ha az elsődleges kulcs még nem létezik, különben, ha az elsődleges kulcs már létezik, akkor frissíti azt a sort.

Adatok frissítése

Az „Update” paranccsal frissítheti a Cassandra táblázat adatait. Ha az adatok frissítése után nem adnak eredményt, az azt jelenti, hogy az adatok sikeresen frissültek, különben hiba jelenik meg. Az oszlopértékek megváltoznak a "Beállítás" záradékban, miközben az adatokat a "Hol" záradékkal szűrjük.

Szintaxis

Update KeyspaceName.TableNameSet ColumnName1=new Column1Value,ColumnName2=new Column2Value,ColumnName3=new Column3Value,… Where ColumnName=ColumnValue

Példa

Itt található a képernyőkép, amely megmutatja az adatbázis állapotát az adatok frissítése előtt.

Ez a pillanatkép a végrehajtott 'Update' parancsról, amely frissíti a hallgató tábla rekordját.

Update University.StudentSet name='Hayden'Where rollno=1;

Az „Update Student” parancs sikeres végrehajtása után a tanuló neve „Clark” -ról „Hayden” -re változik, amelynek 1. listája van.

Itt található a képernyőkép, amely az adatbázis állapotát mutatja az adatok frissítése után.

Cassandra Adatok törlése

A „Törlés” parancs egy teljes sort vagy néhány oszlopot eltávolít a Student táblából. Az adatok törlésekor azokat nem törli azonnal a táblázat. Ehelyett a törölt adatokat síremlékkel jelölik, és a tömörítés után eltávolítják.

Szintaxis

Delete from KeyspaceName.TableNameWhere ColumnName1=ColumnValue

A fenti szintaxis töröl egy vagy több sort attól függően, hogy melyik záradékban van az adatok szűrése.

Delete ColumnNames from KeyspaceName.TableNameWhere ColumnName1=ColumnValue

A fenti szintaxis töröl néhány oszlopot a táblából.

Példa

Ez a pillanatkép mutatja az adatbázis aktuális állapotát az adatok törlése előtt.

Itt található a pillanatkép, amely eltávolítja az egyik sort a Student táblából.

Delete from University.Student where rollno=1;

A „Törlés” parancs sikeres végrehajtása után egy sor törlődik a Student táblából, ahol a rollno értéke 1.

Ez a pillanatkép mutatja az adatbázis állapotát az adatok törlése után.

Amit Cassandra nem támogat

A Cassandra lekérdezési nyelvben (CQL) a következő korlátozások vannak.

  1. A CQL nem támogatja az összesítési lekérdezéseket, mint a max, min, avg
  2. A CQL nem támogatja a csoportosítást, lekérdezésekkel.
  3. A CQL nem támogatja a csatlakozásokat.
  4. A CQL nem támogatja az OR lekérdezéseket.
  5. A CQL nem támogatja a helyettesítő lekérdezéseket.
  6. A CQL nem támogatja az Union, Intersection lekérdezéseket.
  7. A táblázat oszlopai nem szűrhetők index létrehozása nélkül.
  8. A (>) és a (<) alatti lekérdezés csak a fürtözési oszlopban támogatott.

    A Cassandra lekérdezési nyelv nem alkalmas elemzési célokra, mert annyi korlátozás van benne.

Cassandra Hol záradék

Cassandrában az adatok visszakeresése kényes kérdés. Az oszlopot a Cassandra alkalmazásban szűri egy index létrehozása a nem elsődleges kulcsoszlopokon.

Szintaxis

Select ColumnNames from KeyspaceName.TableName Where ColumnName1=Column1Value ANDColumnName2=Column2Value AND… 

Példa

  • Itt található a pillanatkép, amely az adatok lekérését mutatja a Student táblából adatszűrés nélkül.
select * from University.Student;

Két rekordot kap le a Student táblázat.

  • Itt található a pillanatkép, amely a Student-ból történő adatgyűjtést mutatja az adatok szűrésével. Egy rekord beolvasása.

Az adatokat név oszlop szerint szűrjük. Az összes rekord lekérésre kerül, amelynek neve megegyezik a Guru99 nevével.

select * from University.Student where name='Guru99';

érdekes cikkek...