SAP HANA SQL: Tanulja meg az alapvető kijelentéseket 10 perc alatt

⚡ Okos összefoglaló

SAP A HANA SQL a platform fő adatbázis-nyelve. Kezeli a sémadefiníciót, az adatkezelést, a hozzáférés-vezérlést és a munkamenet-kezelést, követve azt a szabványt, amely az SQL-t relációs adatbázisok között hordozhatóvá teszi.

  • 🗣️ Fő szerepkör: Az SQL az elsődleges nyelv a kommunikációhoz SAP A HANA, akárcsak más relációs rendszerek esetében.
  • 🏗️ Sémamunka: A CREATE SCHEMA parancs létrehozza a táblákat, nézeteket és eljárásokat birtokló névteret.
  • 📋 DML utasítások: A SELECT, INSERT és UPDATE utasítások egy táblázat sorait olvassák és módosítják.
  • 🧱 DDL utasítások: A CREATE, ALTER és DROP parancsok definiálják és alakítják át magukat az objektumokat.
  • 🔐 DCL utasítások: A GRANT és a REVOKE parancsok szabályozzák, hogy melyik felhasználó melyik műveletet hajthatja végre.
  • 💬 Hozzászólásstílusok: Double A kötőjel egysoros, a perjel pedig csillag pedig többsoros megjegyzéseket jelöl.
  • 🇧🇷 Adminisztráció: A rendszer-, munkamenet- és tranzakciókezelést mind SQL utasítások vezérlik.

SAP HANA SQL

A legtöbb RDBMS adatbázist használja SQL mint adatbázis-nyelv népszerűsége az, hogy erős, szállítófüggetlen és szabványos. SAP A HANA az SQL-t is támogatja.

In SAP A HANA, az SQL a fő adatbázisnyelv.

Mi a SAP HANA SQL?

Az SQL a strukturált lekérdezési nyelv rövidítése. Ez egy szabványos nyelv a relációs adatbázisokkal való kommunikációhoz, mint például Oracle, MySQL stb. Az SQL az adatbázisban lévő adatok tárolására, lekérésére és módosítására szolgál.

Az SQL használatával SAP HANA, a következő munkát tudjuk elvégezni:

  • A séma meghatározása és használata (Séma létrehozása).
  • DML nyilatkozat (SELECT, UPDATE, INSERT).
  • DDL utasítás (CREATE, ALTER, DROP)
  • DCL utasítás (GRANT, REVOKE)
  • Rendszer menedzsment
  • Munkamenet menedzsment
  • Tranzakciókezelés

Az utasítások a következő SQL konzoljáról hajthatók végre: SAP HANA Stúdió, egy parancssori kliensből, vagy egy JDBC-n vagy ODBC-n keresztül csatlakozó alkalmazásból. Maga a nyelv mindkét esetben azonos.

SQL utasításkategóriák SAP HANNA

Minden utasítás egy kevés számú család egyikéhez tartozik. Annak ismerete, hogy egy utasítás melyik családba tartozik, megjósolja, hogy visszavonható-e, és milyen jogosultságokra van szüksége.

Kategória Teljes név Tipikus állítások Cél
DDL Adatdefiníciós nyelv LÉTREHOZÁS, MÓDOSÍTÁS, ELTÖLTÉS, ÁTNEVEZÉS Objektumokat, például sémákat, táblázatokat és nézeteket definiál és módosít
DML Adatmanipulációs nyelv KIVÁLASZTÁS, BESZÚRÁS, FRISSÍTÉS, TÖRLÉS, UPSERT Beolvassa és módosítja az objektumokban tárolt sorokat
DCL Adatkezelési nyelv ENGEDÉLYEZÉS, VISSZAVONÁS Azt szabályozza, hogy melyik felhasználó vagy szerepkör milyen műveletet hajthat végre
TCL Tranzakcióvezérlés nyelve VÉGLEGESÍTÉS, VISSZAÁLLÍTÁS, MENTÉSI PONT Megerősít vagy elveti a munkaegységet
Ülés Munkamenet menedzsment SÉMA BEÁLLÍTÁSA, KAPCSOLÓDÁS, TRANZAKCIÓ BEÁLLÍTÁSA Konfigurálja az aktuális kapcsolatot
rendszer rendszer menedzsment ALTER SYSTEM, nézetek monitorozása Maga az adatbázispéldány adminisztrálja

Az UPSERT érdemes megjegyezni, mivel nem létezik minden dialektusban. Beszúr egy sort, amikor a kulcs új, és frissíti, amikor a kulcs már létezik, ami eltávolít egy gyakori két utasításból álló mintát.

Megjegyzés SQL-ben

Megjegyzést adhatunk hozzá az SQL utasítások olvashatóságának és karbantarthatóságának javítása érdekében. Az SQL-hez kétféleképpen lehet megjegyzést tenni:

  • Egysoros megjegyzés – Double Kötőjelek „–“. Ez egy egysoros megjegyzés.
  • Többsoros megjegyzés – „/* */”.

Az SQL Parser figyelmen kívül hagyja az összes kommentált szöveget.

-- This is a single line comment
SELECT ELEMENT FROM DHK_SCHEMA.TABLE1;

/* This is a multiple line comment.
   Everything between the markers is ignored
   by the SQL parser. */
SELECT COUNT(*) FROM DHK_SCHEMA.TABLE1;

Alapvető SQL szintaxis példák SAP HANNA

Az alábbi utasítások a séma létrehozásának, a tábla definiálásának, a sorok betöltésének és visszaolvasásának mindennapi ciklusát fedik le. Változatlanul futnak az SQL konzolon.

1) Hozz létre egy sémát. A séma birtokolja a benne létrehozott objektumokat, és ez az elsődleges dolog, amire egy új projektnek szüksége van.

CREATE SCHEMA DHK_SCHEMA;
SET SCHEMA DHK_SCHEMA;

2) Hozz létre egy oszloptáblázatot. Az oszloptárolás az alapértelmezett beállítás, és a HANA analitikai sebességének oka. A sortárolást csak kis, nagy írási kapacitású táblák esetén választjuk.

CREATE COLUMN TABLE DHK_SCHEMA.EMPLOYEE (
  EMP_ID    INTEGER NOT NULL,
  EMP_NAME  NVARCHAR(100),
  HIRE_DATE DATE,
  SALARY    DECIMAL(10,2),
  PRIMARY KEY (EMP_ID)
);

3) Sorok beszúrása és frissítése. Az INSERT parancs új sort ad hozzá, az UPDATE parancs pedig a meglévőket módosítja. Az UPDATE parancsot mindig WHERE záradékkal párosítsa, kivéve, ha minden sornak meg kell változnia.

INSERT INTO DHK_SCHEMA.EMPLOYEE
  VALUES (1, 'Anita Sharma', '2026-01-15', 55000.00);

UPDATE DHK_SCHEMA.EMPLOYEE
  SET SALARY = 60000.00
  WHERE EMP_ID = 1;

4) Kérdezze le az adatokat. A SELECT támogatja az ismerős WHERE, GROUP BY, HAVING és ORDER BY záradékokat.

SELECT EMP_NAME, SALARY
  FROM DHK_SCHEMA.EMPLOYEE
  WHERE SALARY > 50000
  ORDER BY SALARY DESC;

5) Hozzáférés megadása és véglegesítés. A DCL szabályozza, hogy kik olvashatják a táblázatot, a COMMIT pedig véglegesíti a munkát.

GRANT SELECT ON DHK_SCHEMA.EMPLOYEE TO REPORT_USER;
COMMIT;

Az egyes oszlopdefiníciók mezőszintű részleteit a következő részben tárgyaljuk. SAP HANA adattípusok, és a WHERE záradékban használt szimbólumok a SAP HANA operátorok.

SAP HANA SQL vs. Standard SQL

SAP A HANA szorosan követi az SQL szabványt, ezért egy tapasztalt fejlesztő gyorsan produktív. A különbségek, amik igazán számítanak, inkább kiegészítések, mint eltérések.

Terület Szabványos SQL SAP HANA SQL
Asztali tárolás Alapértelmezés szerint sororientált Oszloptárolás alapértelmezés szerint, sortárolás opcionális
Beszúrás vagy frissítés egyetlen utasításban EGYESÍTÉS, ahol támogatott UPSERT, egyszerűbb szintaxis ugyanahhoz az eredményhez
Eredményhalmaz korlátja Nyelvjárásspecifikus LIMIT OFFSET-tel, plusz TOP
Eljárási meghosszabbítás Gyártóspecifikus SQLScript, táblaváltozókkal és párhuzamos végrehajtással
Teljes szöveges keresés Általában egy kiegészítő Beépített a TEXT és a SHORTTEXT oszlopokon keresztül
Az eset érzékenysége Változó A határolatlan azonosítók nagybetűsek, a határolt azonosítók megtartják a kis- és nagybetűs részt.

Az azonosító szabály okozza a legtöbb meglepetést. Ha egy táblanevet kisbetűvel, dupla idézőjelek nélkül írunk, az nagybetűs lesz, majd később, ha kisbetűs dupla idézőjelek közé írjuk, akkor nem találjuk meg. A szabályok a következőkben vannak leírva: adattípusok és azonosítók oktatóanyag, a szélesebb platformot pedig a SAP HANA oktatóanyag sorozat.

GYIK

Az SQL egyetlen utasítást kezel. Az SQLScript eljárási logikát, például változókat, ciklusokat és táblaváltozókat ad hozzá, lehetővé téve, hogy több lépés az adatbázison belül fusson az alkalmazásréteg helyett.

Oszloptáblázatok szinte mindenhez, mivel a tömörítési és analitikai olvasások sokkal gyorsabbak. A sortáblázatok kis konfigurációs táblázatokhoz alkalmasak, amelyek teljes egészében, rekordról rekordra, minden hozzáféréskor olvashatók.

Igen. A séma alapján a nyelvi modellek helyes SELECT utasításokat készítenek egy írásos kérésből. RevA view függvény gondosan vizsgálja az illesztéseket és szűréseket, mivel egy hihető lekérdezés is adhat rossz választ.

Igen. A mesterséges intelligencia beolvassa a végrehajtási tervet, és átírásokat, jobb illesztési sorrendet vagy hiányzó szűrőket javasol. Mérd az eredményt, mert egy javaslat, ami az egyik adatmennyiségnek segít, egy másiknak árthat.

Nem. Az elemző a végrehajtás előtt elveti őket, így a megjegyzések futásidőben nem kerülnek semmibe. Ezek a legolcsóbb módja annak, hogy egy hosszú analitikus utasítást karbantarthatóvá tegyünk.

Foglald össze ezt a bejegyzést a következőképpen: