Introductie op tabel in SQL
In een relationeel databasebeheersysteem wordt een tabel gebruikt om gegevens effectief en efficiënt op te slaan, zodat deze indien nodig eenvoudig kunnen worden opgehaald. Een tabel is een verzameling gerelateerde gegevens en de gegevens zijn gerangschikt in rijen en kolommen. Een tuple of record in een tabel is een enkele invoer waarbij tuple een set gerelateerde gegevens vertegenwoordigt. In een tabel in SQL wordt de primaire sleutel gebruikt om de records uniek te identificeren, terwijl de externe sleutel wordt gebruikt om naar gegevens uit een andere tabel te verwijzen.
Hoe maak je een tabel in SQL?
De syntaxis om een tabel te maken is als volgt:
CREATE TABLE table_name (
COLUMN1 datatype PRIMARY KEY,
COLUMN2 datatype,
COLUMN3 datatype,
……
);
Laten we de tabel 'STUDENTEN' maken zoals hieronder:
CREATE TABLE STUDENTS (
ROLL INT PRIMARY KEY,
NAME VARCHAR (50),
AGE INT,
SUBJECT VARCHAR (50)
);
We kunnen waarden als volgt invoegen in de tabel 'STUDENTEN':
INSERT INTO STUDENTS VALUES (8, 'Ram', 12, 'ENG');
INSERT INTO STUDENTS VALUES (11, 'Priya', 11, 'MATH');
INSERT INTO STUDENTS VALUES (9, 'Rahul', 10, 'SCIENCE');
Na het invoegen van de gegevens zien we de gegevens zoals hieronder in de tabel ingevoegd:
SELECT * FROM STUDENTS;
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
8 | RAM | 12 | ENGELS |
11 | Priya | 11 | WISKUNDE |
9 | Rahul | 10 | WETENSCHAP |
Hoe tabel in SQL te laten vallen?
De syntaxis om een tabel neer te zetten is als volgt:
DROP TABLE table_name;
DROP TABLE STUDENTS;
De bovenstaande zoekopdracht laat de tabel 'STUDENTEN' vallen, dwz dat de gegevens en de tabeldefinitie voor de tabel worden verwijderd. We moeten dus voorzichtig zijn voordat we een drop-instructie uitvoeren, omdat alle informatie met betrekking tot de tabel uit de database wordt verwijderd.
Hoe tabel in SQL te verwijderen?
Als we de instructie DELETE gebruiken zonder de clausule WHERE, worden alle rijen van een tabel verwijderd, maar blijft de tabelstructuur hetzelfde. De syntaxis voor hetzelfde is als hieronder:
DELETE FROM table_name;
De delete-opdracht wordt in SQL gebruikt om de records te verwijderen die momenteel in de tabel staan. Wanneer de vereiste zich voordoet en we bepaalde records niet willen, wordt de verwijderinstructie samen met de Where-clausule gebruikt om die records te verwijderen. De syntaxis voor hetzelfde is als hieronder:
DELETE FROM table_name WHERE (condition);
DELETE FROM STUDENTS WHERE SUBJECT= 'MATH';
De bovenstaande zoekopdracht geeft het onderstaande resultaat:
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
8 | RAM | 12 | ENGELS |
9 | Rahul | 10 | WETENSCHAP |
Hoe tabel in SQL hernoemen?
Het gebeurt zo dat we, nadat we de tabel hebben gemaakt, deze willen hernoemen. De instructie ALTER TABLE wordt gebruikt om de tabel te hernoemen.
ALTER TABLE table_name RENAME TO table_name_new;
Als we de tabelnaam 'STUDENTEN' willen wijzigen, kan dit als volgt.
ALTER TABLE STUDENTS RENAME TO STUDENT_NEW;
Hoe tabel in SQL af te kappen?
Wanneer het nodig is om de gegevens in de tabel te verwijderen en de tabelstructuur zoals kolommen enz. Moeten blijven zoals ze zijn, kunnen we de instructie TRUNCATE gebruiken die alleen de gegevens uit de tabel verwijdert, maar niet de tabel.
De syntaxis voor het gebruik van de instructie TRUNCATE is als volgt:
TRUNCATE TABLE table_name;
TRUNCATE TABLE STUDENTS;
De bovenstaande zoekopdracht verwijdert de gegevens uit de tabel 'STUDENTEN'. De tabel ziet er na de TRUNCATE-bewerking uit zoals hieronder:
SELECT * FROM STUDENTS;
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
Met andere woorden, we kunnen ook zeggen dat de instructie TRUNCATE dezelfde bewerking uitvoert die kan worden gedaan met de instructie DELETE, maar zonder het gebruik van de clausule WHERE.
Het voordeel van het gebruik van de instructie TRUNCATE is dat we de tabel niet hoeven te verwijderen en de tabel opnieuw moeten maken. Het is ook een efficiënte manier om de records uit de tabel te wissen in dergelijke gevallen waarin we ons geen zorgen hoeven te maken over de Rollback.
Hoe tabel in SQL wijzigen?
We gebruiken de ALTER-tabelinstructie om de kolommen te wijzigen die momenteel in de tabellen voorkomen. Met dezelfde verklaring kunnen we ook andere beperkingen aan de tafel toevoegen of toevoegen.
Hieronder staat de syntaxis om een nieuwe kolom aan de bestaande tabel toe te voegen:
ALTER TABLE table_name ADD (column_name1 datatype, column_name2 datatype… column datatype);
Laten we nog een kolom 'ADRES' toevoegen aan de bestaande tabel 'STUDENTEN'.
ALTER TABLE STUDENTS ADD ADDRESS VARCHAR (50);
SELECT * FROM STUDENTS;
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN | ADRES |
8 | RAM | 12 | ENGELS | |
11 | Priya | 11 | WISKUNDE | |
9 | Rahul | 10 | WETENSCHAP |
In de bovenstaande query wordt de kolom ADRES aan de tabel toegevoegd.
Als we een kolom willen verwijderen, kan dit met de onderstaande syntaxis:
ALTER TABLE table_name DROP COLUMN column_name;
Laten we het onderstaande voorbeeld bekijken door de kolom ADDRESS te laten vallen.
ALTER TABLE table_name DROP COLUMN ADDRESS;
De bovenstaande zoekopdracht levert het onderstaande resultaat op.
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
8 | RAM | 12 | ENGELS |
11 | Priya | 11 | WISKUNDE |
9 | Rahul | 10 | WETENSCHAP |
Hier kunnen we zien dat de tabel is gewijzigd omdat de kolom ADRES nu is verwijderd uit de tabel 'STUDENTEN'.
Met behulp van de ALTER-instructie kunnen we een of meer kolommen tegelijk wijzigen.
De syntaxis om de kolom te wijzigen is als volgt.
ALTER TABLE STUDENTS MODIFY column_name datatype;
ALTER TABLE STUDENTS MODIFY SUBJECT VARCHAR (30);
Hoe haal je gegevens uit de tabel in SQL?
In SQL wordt de SELECT-instructie gebruikt als een van de flexibele mechanismen om gegevens uit de tabellen in databases op te halen. De syntaxis van een zoekopdracht met SELECT is als volgt:
SELECT column1, column2… FROM table_name;
In de bovenstaande query moeten we de kolommen plaatsen waarvoor we gegevens uit de tabel willen ophalen. Als we de gegevens voor alle kolommen of de gegevens van de hele tabel willen ophalen, kunnen we dit doen door de onderstaande syntaxis te gebruiken:
SELECT * FROM table_name;
SELECT * FROM STUDENTS;
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
8 | RAM | 12 | ENGELS |
11 | Priya | 11 | WISKUNDE |
9 | Rahul | 10 | WETENSCHAP |
Hiermee wordt door het gebruik van een jokerteken - '*' alle rijen en kolommen van de tabel 'STUDENTEN' opgehaald. Dit is de eenvoudigste vorm van de SELECT-instructie. Als de eis echter ontstaat waar we het ophalen van gegevens volgens een paar specifieke voorwaarden moeten beperken, moeten we de WHERE-clausule gebruiken. De syntaxis hiervoor is als volgt:
SELECT column1, column2…
FROM table_name
WHERE (condition);
Laten we eens kijken hoe we de gegevens met de opgegeven voorwaarde kunnen ophalen met behulp van de bovenstaande query. Stel dat we de ROLL en SUBJECT van de student met een leeftijd van meer dan 10 willen selecteren uit de tabel 'STUDENTS'.
SELECT ROLL, SUBJECT FROM STUDENTS WHERE AGE > 10;
De bovenstaande zoekopdracht beperkt de resultaten alleen voor studenten die ouder zijn dan 10 jaar. Hier beperkt de 'WHERE'-clausule het resultaat van de zoekopdracht tot de opgegeven voorwaarde.
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
8 | RAM | 12 | ENGELS |
11 | Priya | 11 | WISKUNDE |
Hoe tabel kopiëren in SQL?
We kunnen de gegevens van de ene tabel naar de andere kopiëren met behulp van de instructies SELECT INTO of INSERT INTO. Wanneer u een SELECT INTO-instructie gebruikt, hoeft de database niet de doeltabel te hebben waarnaar de gegevens worden gekopieerd om daar te zijn. Maar als u de instructie INSERT INTO gebruikt, moet de doeltabel waarnaar gegevens worden gekopieerd in de database bestaan.
SELECT * INTO table_new FROM table_old;
De bovenstaande query kopieert alle kolommen van table_old naar table_new.
Als we slechts enkele kolommen van de ene naar de andere tabel willen kopiëren, kunnen we de onderstaande syntaxis gebruiken:
SELECT column1, column2… INTO table_new FROM table_old;
Laten we een voorbeeld nemen waar we de gegevens uit de tabel naar een andere tabel 'STUDENT_DETAILS' willen kopiëren en het kan als volgt worden uitgevoerd:
SELECT * INTO STUDENT_DETAILS FROM STUDENTS;
Een andere tabel 'STUDENT_DETAILS' wordt gemaakt zoals hieronder:
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
8 | RAM | 12 | ENGELS |
11 | Priya | 11 | WISKUNDE |
9 | Rahul | 10 | WETENSCHAP |
De syntaxis voor het kopiëren van gegevens met de instructie INSERT INTO is als volgt:
INSERT INTO table_new(column1, column2… )
SELECT column1, column2… FROM table_old WHERE (condition);
Zoals hierboven besproken, zal de INSERT INTO-instructie vereisen dat de doeltabel aanwezig is. Eerst moeten we de doeltabelstructuur in de database maken. Nadat we de structuur van tabel STUDENT_DETAILS hebben gemaakt, gaan we voor de onderstaande query.
INSERT INTO STUDENT_DETAILS (ROLL, NAME, AGE)
SELECT ROLL, NAME, AGE FROM STUDENTS
WHERE SUBJECT = 'SCIENCE';
De bovenstaande zoekopdracht geeft het onderstaande resultaat:
ROLLEN | NAAM | LEEFTIJD | ONDERWERPEN |
9 | Rahul | 10 | WETENSCHAP |
We moeten er rekening mee houden dat tijdens het gebruik van de INSERT INTO-instructie, gegevenstypen van kolommen in bron- en doeltabellen met elkaar moeten overeenkomen.
Conclusie
In RDBMS maken de tabellen het opslaan, ophalen, onderhouden en manipuleren van gegevens op de meest effectieve manier. Met het gebruik van verschillende opdrachten kunnen we de gegevens rangschikken en manipuleren volgens de bedrijfsvereisten. Het is aan de ontwerper / ontwikkelaar om de flexibiliteit van de verschillende opdrachten en bewerkingen te zien om het beste te kiezen voor hun ontwerpen en implementaties.
Aanbevolen artikelen
Dit is een handleiding voor de tabel in SQL. Hier bespreken we de inleiding, en hoe maken, droppen, verwijderen, hernoemen, afkorten, wijzigen, gegevens ophalen en kopiëren tabel in SQL. U kunt ook de volgende artikelen bekijken voor meer informatie–
- Buitenlandse sleutel in SQL
- Transacties in SQL
- SQL-weergaven
- Database in SQL
- Voorbeelden van INSERT in Oracle