SAP HANA SQL: Leer basisverklaringen in 10 minuten
โก Slimme samenvatting
SAP HANA SQL is de belangrijkste databasetaal van het platform. Het verzorgt de schema-definitie, gegevensmanipulatie, toegangscontrole en sessiebeheer, volgens de standaard die SQL overdraagbaar maakt tussen relationele databases.

De meeste RDBMS-database gebruikt SQL als databasetaal is de reden dat het populair is: het is krachtig, leveranciersonafhankelijk en gestandaardiseerd. SAP HANA ondersteunt ook SQL.
In SAP HANA, SQL is de belangrijkste databasetaal.
Wat is SAP HANA-SQL?
SQL staat voor Structured Query Language. Het is een standaardtaal voor communicatie met relationele databases zoals Oracle, MySQL enz. SQL wordt gebruikt om de gegevens in de database op te slaan, op te halen en te wijzigen.
Door gebruik te maken van SQL in SAP HANA, wij kunnen de volgende taken uitvoeren:
- Schemadefinitie en gebruik (CREATE SCHEMA).
- DML-instructie (SELECT, UPDATE, INSERT).
- DDL-instructies (CREATE, ALTER, DROP)
- DCL-verklaring (TOEKENNEN, INTREKKEN)
- Systeem beheer
- Sessiebeheer
- Transactiebeheer
Instructies worden uitgevoerd vanuit de SQL-console van SAP HANA StudioDit kan via een opdrachtregelclient of via een applicatie die verbinding maakt via JDBC of ODBC. De taal zelf is in alle gevallen identiek.
SQL-instructiecategorieรซn in SAP HANA
Elke verklaring behoort tot een van een klein aantal families. Weten tot welke familie een verklaring behoort, voorspelt of deze kan worden teruggedraaid en welke toestemming daarvoor nodig is.
| Categorie | Voor- en achternaam | Typische uitspraken | Doel |
|---|---|---|---|
| DDL | Gegevensdefinitietaal | AANMAKEN, WIJZIGEN, VERWIJDEREN, HERNOEMEN | Definieert en wijzigt objecten zoals schema's, tabellen en weergaven. |
| DML | Data Manipulatie Taal | SELECTEREN, INVOEGEN, BIJWERKEN, VERWIJDEREN, OPNIEUW INVOEGEN | Leest en wijzigt de rijen die in objecten zijn opgeslagen. |
| DCL | Taal voor gegevensbeheer | VERLENEN, INTREKKEN | Hiermee wordt bepaald welke gebruiker of rol welke actie mag uitvoeren. |
| TCL | Transactiecontroletaal | COMMIT, ROLLBACK, SAVEPOINT | Bevestigt of verwerpt een werkeenheid |
| Sessie | Session beheer | SCHEMA INSTELLEN, VERBINDEN, TRANSACTIE INSTELLEN | Configureert de huidige verbinding |
| Systeem | Systeem beheer | SYSTEEM WIJZIGEN, weergaven bewaken | Beheert de database-instantie zelf. |
UPSERT is het vermelden waard omdat het niet in elke programmeertaal voorkomt. Het voegt een rij in wanneer de sleutel nieuw is en werkt deze bij wanneer de sleutel al bestaat, waardoor een veelvoorkomend patroon van twee statements wordt vermeden.
Commentaar in SQL
We kunnen een opmerking toevoegen om de leesbaarheid en onderhoudbaarheid van SQL-instructies te verbeteren. Er kunnen op twee manieren commentaar op SQL worden geplaatst:
- Enkele regel commentaar โ Double Koppelteken โโโ. Dit is een commentaarregel.
- Meerdere regels commentaar โ โ/* */โ.
Alle tekst met commentaar wordt genegeerd door SQL Parser.
-- 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;
Basisvoorbeelden van SQL-syntaxis in SAP HANA
De onderstaande instructies beschrijven de dagelijkse cyclus van het maken van een schema, het definiรซren van een tabel, het laden van rijen en het teruglezen ervan. Ze worden ongewijzigd uitgevoerd in de SQL-console.
1) Maak een schema aan. Een schema is de eigenaar van de objecten die erin worden aangemaakt en is het eerste wat een nieuw project nodig heeft.
CREATE SCHEMA DHK_SCHEMA; SET SCHEMA DHK_SCHEMA;
2) Maak een kolomtabel aan. Kolomopslag is de standaard en de reden voor de hoge analytische snelheid van HANA. Rijopslag wordt alleen gekozen voor kleine tabellen met veel schrijfbewerkingen.
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) Rijen invoegen en bijwerken. INSERT voegt een rij toe en UPDATE wijzigt bestaande rijen. Combineer een UPDATE altijd met een WHERE-clausule, tenzij elke rij daadwerkelijk moet worden gewijzigd.
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) De gegevens opvragen. SELECT ondersteunt de bekende WHERE-, GROUP BY-, HAVING- en ORDER BY-clausules.
SELECT EMP_NAME, SALARY FROM DHK_SCHEMA.EMPLOYEE WHERE SALARY > 50000 ORDER BY SALARY DESC;
5) Toegang verlenen en vastleggen. DCL bepaalt wie de tabel mag lezen, en COMMIT maakt de wijziging permanent.
GRANT SELECT ON DHK_SCHEMA.EMPLOYEE TO REPORT_USER; COMMIT;
De details op veldniveau van elke kolomdefinitie worden behandeld in SAP HANA-gegevenstypenen de symbolen die in de WHERE-clausule worden gebruikt in SAP HANA-operators.
SAP HANA SQL versus standaard SQL
SAP HANA volgt de SQL-standaard nauwgezet, waardoor een ervaren ontwikkelaar snel productief kan zijn. De belangrijkste verschillen zijn toevoegingen in plaats van afwijkingen.
| De Omgeving | Standaard SQL | SAP HANA-SQL |
|---|---|---|
| Tafelopslag | Standaard rijgeoriรซnteerd | Kolomopslag standaard, rijopslag optioneel. |
| Invoegen of bijwerken in รฉรฉn statement | SAMENVOEGEN, indien ondersteund | UPSERT, een eenvoudigere syntaxis voor hetzelfde resultaat. |
| Resultaatsetlimiet | dialectspecifiek | LIMIET met OFFSET, plus TOP |
| Procedurele uitbreiding | Leverancier specifiek | SQLScript, met tabelvariabelen en parallelle uitvoering |
| Volledige tekst zoeken | Meestal een toevoeging. | Ingebouwd via TEXT- en SHORTTEXT-kolommen |
| Hoofdlettergevoeligheid | Variabel | Niet-gelimiteerde identificatoren worden in hoofdletters weergegeven, gelimiteerde identificatoren behouden hun hoofdlettergevoeligheid. |
De identificatieregel zorgt voor de meeste verrassingen. Het schrijven van een tabelnaam in kleine letters zonder aanhalingstekens resulteert in een hoofdletter, en vervolgens lukt het niet om de tabelnaam te vinden als deze binnen aanhalingstekens in kleine letters wordt weergegeven. De regels zijn vastgelegd in de gegevenstypen en identificatoren handleiding, waarbij het bredere platform wordt behandeld in de SAP HANA-handleiding series.
