SQL-opdrachten: DML, DDL, DCL, TCL, DQL met queryvoorbeeld
Wat is SQL?
SQL is een databasetaal die is ontworpen voor het ophalen en beheren van gegevens in een relationele database.
SQL is de standaardtaal voor databasebeheer. Alle RDBMS-systemen houden van MySQL, MS-toegang, Oracle, Sybase, Postgres en SQL Server gebruiken SQL als hun standaard databasetaal. SQL-programmeertaal gebruikt verschillende opdrachten voor verschillende bewerkingen. We leren over DCL-, TCL-, DQL-, DDL- en DML-opdrachten in SQL met voorbeelden.
Waarom SQL gebruiken?
Hier volgen belangrijke redenen om SQL te gebruiken
- Het helpt gebruikers toegang te krijgen tot gegevens in de RDBMS-systeem.
- Het helpt u de gegevens te beschrijven.
- Hiermee kunt u de gegevens in een database definiëren en die specifieke gegevens manipuleren.
- Met behulp van SQL-opdrachten in DBMS kunt u databases en tabellen maken en verwijderen.
- SQL biedt u de mogelijkheid om de functie in een database te gebruiken, een weergave en een opgeslagen procedure te maken.
- U kunt machtigingen instellen voor tabellen, procedures en weergaven.
Korte geschiedenis van SQL
Hier zijn belangrijke oriëntatiepunten uit de geschiedenis van SQL:
- 1970 – Dr. Edgar F. “Ted” Codd beschreef een relationeel model voor databases.
- 1974 – Gestructureerde zoektaal verschijnt.
- 1978 - IBM heeft een product uitgebracht met de naam System/R.
- 1986 - IBM ontwikkelde het prototype van een relationele database, die is gestandaardiseerd door ANSI.
- 1989 - Eerste versie ooit gelanceerd van SQL
- 1999 – SQL 3 gelanceerd met functies zoals triggers, objectoriëntatie, enz.
- SQL2003- vensterfuncties, XML-gerelateerde functies, enz.
- SQL2006- Ondersteuning voor XML-querytaal
- SQL2011-verbeterde ondersteuning voor tijdelijke databases
Soorten SQL
Hier volgen vijf typen veelgebruikte SQL-query's.
- Gegevensdefinitietaal (DDL)
- Taal voor gegevensmanipulatie (DML)
- Taal voor gegevenscontrole (DCL)
- Transactiecontroletaal (TCL)
- Gegevensquerytaal (DQL)
Laten we ze allemaal in detail bekijken:
Wat is DDL?
Data Definition Language helpt u bij het definiëren van de databasestructuur of het schema. Laten we meer te weten komen over DDL-opdrachten met syntaxis.
Vijf soorten DDL-opdrachten in SQL zijn:
CREATE
CREATE-instructies worden gebruikt om het databasestructuurschema te definiëren:
Syntax:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Bij voorbeeld:
Create database university; Create table students; Create view for_students;
DROP
Drops-opdrachten verwijderen tabellen en databases uit RDBMS.
Syntaxis
DROP TABLE ;
Bijvoorbeeld:
Drop object_type object_name; Drop database university; Drop table student;
ALTER
Met de opdracht Alters kunt u de structuur van de database wijzigen.
Syntax:
Een nieuwe kolom aan de tabel toevoegen
ALTER TABLE table_name ADD column_name COLUMN-definition;
Een bestaande kolom in de tabel wijzigen:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Bijvoorbeeld:
Alter table guru99 add subject varchar;
AFKNOPEN
Met deze opdracht werden alle rijen uit de tabel verwijderd en de ruimte met de tabel vrijgemaakt.
Syntax:
TRUNCATE TABLE table_name;
Voorbeeld:
TRUNCATE table students;
Wat is datamanipulatietaal?
Met Data Manipulation Language (DML) kunt u het database-exemplaar wijzigen door de gegevens ervan in te voegen, te wijzigen en te verwijderen. Het is verantwoordelijk voor het uitvoeren van alle soorten gegevenswijzigingen in een database.
Er zijn drie basisconstructies waarmee het databaseprogramma en de gebruiker gegevens en informatie kunnen invoeren:
Hier zijn enkele belangrijke DML-opdrachten in SQL:
- INSERT
- UPDATE
- VERWIJDEREN
INSERT
Dit is een instructie en een SQL-query. Deze opdracht wordt gebruikt om gegevens in de rij van een tabel in te voegen.
Syntax:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Bijvoorbeeld:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');
UPDATE
Deze opdracht wordt gebruikt om de waarde van een kolom in de tabel bij te werken of te wijzigen.
Syntax:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Bijvoorbeeld:
UPDATE students SET FirstName = 'Jhon', LastName= 'Wick' WHERE StudID = 3;
VERWIJDEREN
Deze opdracht wordt gebruikt om een of meer rijen uit een tabel te verwijderen.
Syntax:
DELETE FROM table_name [WHERE condition];
Bijvoorbeeld:
DELETE FROM students WHERE FirstName = 'Jhon';
Wat is DCL?
DCL (Data Control Language) bevat opdrachten als GRANT en REVOKE, die handig zijn om ‘rechten en machtigingen’ te geven. Andere machtigingen bepalen de parameters van het databasesysteem.
Voorbeelden van DCL-opdrachten
Commando's die onder DCL vallen:
- Grant
- Revokay
Grant
Deze opdracht wordt gebruikt om gebruikerstoegangsrechten tot een database te geven.
Syntax:
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
Bijvoorbeeld:
GRANT SELECT ON Users TO'Tom'@'localhost;
Revokay
Het is handig om de machtigingen van de gebruiker te herstellen.
Syntax:
REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}
Bijvoorbeeld:
REVOKE SELECT, UPDATE ON student FROM BCA, MCA;
Wat is TCL?
Transactiecontroletaal of TCL-opdrachten behandelen de transactie binnen de database.
Plegen
Deze opdracht wordt gebruikt om alle transacties in de database op te slaan.
Syntax:
Commit;
Bijvoorbeeld:
DELETE FROM Students WHERE RollNo =25; COMMIT;
Rollback
Met de Rollback-opdracht kunt u transacties ongedaan maken die nog niet in de database zijn opgeslagen.
Syntax:
ROLLBACK;
Voorbeeld:
DELETE FROM Students WHERE RollNo =25;
OPSLAGPUNT
Dit commando helpt u bij het instellen van een savepoint binnen een transactie.
Syntax:
SAVEPOINT SAVEPOINT_NAME;
Voorbeeld:
SAVEPOINT RollNo;
Wat is DQL?
Data Query Language (DQL) wordt gebruikt om de gegevens uit de database op te halen. Het gebruikt slechts één commando:
SELECT
Met deze opdracht kunt u het attribuut selecteren op basis van de voorwaarde die wordt beschreven door de WHERE-clausule.
Syntax:
SELECT expressions FROM TABLES WHERE conditions;
Bijvoorbeeld:
SELECT FirstName FROM Student WHERE RollNo > 15;
Samenvatting
- SQL is een databasetaal die is ontworpen voor het ophalen en beheren van gegevens in een relationele database.
- Het helpt gebruikers toegang te krijgen tot gegevens in het RDBMS-systeem
- In het jaar 1974 verscheen de term Structured Query Language
- Vijf soorten SQL-query's zijn 1) Data Definition Language (DDL) 2) Data Manipulation Language (DML) 3) Data Control Language (DCL) 4) Transaction Control Language (TCL) en 5) Data Query Language (DQL)
- Data Definition Language (DDL) helpt u bij het definiëren van de databasestructuur of het schema.
- Met Data Manipulation Language (DML) kunt u het database-exemplaar wijzigen door de gegevens ervan in te voegen, te wijzigen en te verwijderen.
- DCL (Data Control Language) bevat opdrachten als GRANT en REVOKE, die handig zijn om ‘rechten en machtigingen’ te geven.
- Transactiecontroletaal of TCL-opdrachten behandelen de transactie binnen de database.
- Data Query Language (DQL) wordt gebruikt om de gegevens uit de databank.