Tabell i SQL - Lär dig att skapa, släppa, ta bort, byta namn på tabell i SQL?

Innehållsförteckning:

Anonim

Introduktion till tabell i SQL

I ett relationsdatabashanteringssystem används en tabell för att lagra data effektivt och effektivt så att det vid behov kan hämtas enkelt. En tabell är en samling relaterade data och uppgifterna är ordnade i rader och kolumner. En tupel eller post i en tabell är en enda post där tupeln representerar en uppsättning relaterade data. I en tabell i SQL används den primära nyckeln för att identifiera poster unikt medan den främmande nyckeln används för att referera data från en annan tabell.

Hur skapar jag en tabell i SQL?

Syntaxen för att skapa en tabell är enligt nedan:

CREATE TABLE table_name (
COLUMN1 datatype PRIMARY KEY,
COLUMN2 datatype,
COLUMN3 datatype,
……
);

Låt oss skapa tabellen "STUDENTS" enligt nedan:

CREATE TABLE STUDENTS (
ROLL INT PRIMARY KEY,
NAME VARCHAR (50),
AGE INT,
SUBJECT VARCHAR (50)
);

Vi kan infoga värden i tabellen "STUDENTS" enligt nedan:

INSERT INTO STUDENTS VALUES (8, 'Ram', 12, 'ENG');
INSERT INTO STUDENTS VALUES (11, 'Priya', 11, 'MATH');
INSERT INTO STUDENTS VALUES (9, 'Rahul', 10, 'SCIENCE');

Efter att ha infogat data kan vi se de data som lagts in i tabellen enligt nedan:

SELECT * FROM STUDENTS;

RULLANAMNÅLDERÄMNE
8Bagge12ENGELSK
11priya11MATEMATIK
9Rahul10VETENSKAP

Hur man tappar tabell i SQL?

Syntaxen för att släppa en tabell är som nedan:

DROP TABLE table_name;

DROP TABLE STUDENTS;

Ovanstående fråga kommer att släppa tabellen "STUDENTS", dvs. data och tabelldefinition för tabellen kommer att tas bort. Så vi måste vara försiktiga innan vi kör ett drop-uttalande eftersom all information relaterad till tabellen kommer att tas bort från databasen.

Hur tar jag bort tabell i SQL?

När vi använder DELETE-uttalandet utan WHERE-klausulen ska alla rader i en tabell raderas, men tabellstrukturen förblir densamma. Syntaxen för samma är som nedan:

DELETE FROM table_name;

Raderingssatsen används i SQL för att radera de poster som finns i tabellen för närvarande. När kravet uppstår och vi inte vill ha vissa poster, används raderingssatsen tillsammans med Where-klausul för att ta bort dessa poster. Syntaxen för samma är som nedan:

DELETE FROM table_name WHERE (condition);

DELETE FROM STUDENTS WHERE SUBJECT= 'MATH';

Ovanstående fråga ger följande resultat:

RULLANAMNÅLDERÄMNE
8Bagge12ENGELSK
9Rahul10VETENSKAP

Hur byter man namn på tabell i SQL?

Det händer så att vi någon gång efter att vi har skapat tabellen vill byta namn på det. Satsen ALTER TABLE används för att byta namn på tabellen.

ALTER TABLE table_name RENAME TO table_name_new;

Om vi ​​vill ändra tabellnamnet "STUDENTS" kan det göras enligt nedan.

ALTER TABLE STUDENTS RENAME TO STUDENT_NEW;

Hur man trunkerar tabellen i SQL?

När behovet uppstår för att radera data inuti tabellen och tabellstrukturen som kolumner etc behöver förbli som den är, kan vi använda TRUNCATE-uttalande som bara raderar data från tabellen men inte från tabellen.

Syntaxen för att använda TRUNCATE-uttalandet är som nedan:

TRUNCATE TABLE table_name;

TRUNCATE TABLE STUDENTS;

Ovanstående fråga raderar data från tabellen "STUDENTS". Tabellen ser ut som nedan efter TRUNCATE-operationen:

SELECT * FROM STUDENTS;

RULLANAMNÅLDERÄMNE

Med andra ord kan vi också säga att TRUNCATE-uttalandet utför samma operation som kan göras med DELETE-uttalandet men utan användning av WHERE-klausulen.

Fördelen med att använda TRUNCATE-uttalandet är att vi inte behöver släppa tabellen och skapa tabellen igen. Det är också ett effektivt sätt att rensa posten från tabellen i sådana fall där vi inte behöver oroa oss för rollbacken.

Hur man ändrar tabell i SQL?

Vi använder ALTER-tabellbeskrivningen för att ändra de kolumner som finns i tabellerna för närvarande. Också med samma uttalande kan vi släppa eller lägga till olika begränsningar på bordet.

Nedan är syntaxen för att lägga till en ny kolumn i den befintliga tabellen:

ALTER TABLE table_name ADD (column_name1 datatype, column_name2 datatype… column datatype);

Låt oss lägga till en annan kolumn "ADRESS" till den befintliga tabellen "STUDENTS".

ALTER TABLE STUDENTS ADD ADDRESS VARCHAR (50);

SELECT * FROM STUDENTS;

RULLANAMNÅLDERÄMNEADRESS
8Bagge12ENGELSK
11priya11MATEMATIK
9Rahul10VETENSKAP

I frågan ovan läggs kolumnen ADDRESS till i tabellen.

Om vi ​​vill släppa en kolumn kan det göras med syntaxen nedan:

ALTER TABLE table_name DROP COLUMN column_name;

Låt oss se exemplet nedan genom att släppa kolumnen ADRESS.

ALTER TABLE table_name DROP COLUMN ADDRESS;

Ovanstående fråga ger resultatet nedan.

RULLANAMNÅLDERÄMNE
8Bagge12ENGELSK
11priya11MATEMATIK
9Rahul10VETENSKAP

Här kan vi se att tabellen är modifierad eftersom kolumnen ADRESS nu tas bort från tabellen "STUDENTS".

Med hjälp av ALTER-uttalandet kan vi ändra en eller flera kolumner samtidigt.

Syntaxen för att modifiera kolumnen är som nedan.

ALTER TABLE STUDENTS MODIFY column_name datatype;

ALTER TABLE STUDENTS MODIFY SUBJECT VARCHAR (30);

Hur hämtar jag data från tabellen i SQL?

I SQL används SELECT-satsen som en av de flexibla mekanismerna för att hämta data från tabellerna i databaser. Syntaxen för en fråga med SELECT är som nedan:

SELECT column1, column2… FROM table_name;

I frågan ovan måste vi placera de kolumner som vi vill hämta data för från tabellen. Om vi ​​vill hämta data för alla kolumner eller data i hela tabellen kan vi göra det genom att använda syntaxen nedan:

SELECT * FROM table_name;

SELECT * FROM STUDENTS;

RULLANAMNÅLDERÄMNE
8Bagge12ENGELSK
11priya11MATEMATIK
9Rahul10VETENSKAP

Härmed kommer användningen av ett jokertecken - '*' att hämta alla rader och kolumner i tabellen "STUDENTS". Detta är den enklaste formen av SELECT-uttalandet. Men om kravet uppstår där vi behöver begränsa hämtningen av data enligt några specifika villkor, måste vi använda WHERE-klausulen. Syntaxen för detta är som nedan:

SELECT column1, column2…
FROM table_name
WHERE (condition);

Låt oss se hur vi hämtar data med det angivna villkoret med hjälp av ovanstående fråga. Anta att vi vill välja studentens ROLL och SUBJECT vars ålder är större än 10 från tabellen "STUDENTS".

SELECT ROLL, SUBJECT FROM STUDENTS WHERE AGE > 10;

Ovanstående fråga kommer att begränsa resultaten för endast de studenter vars ålder är mer än 10 år. Här kommer WHERE-klausulen att begränsa resultatet av frågan till det angivna villkoret.

RULLANAMNÅLDERÄMNE
8Bagge12ENGELSK
11priya11MATEMATIK

Hur man kopierar tabell i SQL?

Vi kan kopiera data från en tabell till en annan genom att använda antingen SELECT INTO eller INSERT INTO-satser. När du använder ett SELECT INTO-uttalande behöver databasen inte ha den måltabell som data kommer att kopieras för att vara där. Men om du använder INSERT INTO-uttalandet, bör måltabellen till vilken data kopieras existera i databasen.

SELECT * INTO table_new FROM table_old;

Ovanstående fråga kopierar alla kolumner från table_old till table_new.

Om vi ​​bara vill kopiera några få kolumner från en till den andra tabellen kan vi använda syntaxen nedan:

SELECT column1, column2… INTO table_new FROM table_old;

Låt oss ta ett exempel där vi vill kopiera data från tabellen till en annan tabell 'STUDENT_DETAILS' och de kan utföras enligt nedan:

SELECT * INTO STUDENT_DETAILS FROM STUDENTS;

En annan tabell "STUDENT_DETAILS" ska skapas enligt nedan:

RULLANAMNÅLDERÄMNE
8Bagge12ENGELSK
11priya11MATEMATIK
9Rahul10VETENSKAP

Syntaxen för att kopiera data med INSERT INTO-satsen är som nedan:

INSERT INTO table_new(column1, column2… )
SELECT column1, column2… FROM table_old WHERE (condition);

Som diskuterats ovan att INSERT INTO-uttalandet kommer att kräva att måltabellen är närvarande, måste vi först skapa måltabellstrukturen i databasen. Efter att ha skapat strukturen i tabellen STUDENT_DETAILS ska vi gå till frågan nedan.

INSERT INTO STUDENT_DETAILS (ROLL, NAME, AGE)
SELECT ROLL, NAME, AGE FROM STUDENTS
WHERE SUBJECT = 'SCIENCE';

Ovanstående fråga ger resultatet nedan:

RULLANAMNÅLDERÄMNE
9Rahul10VETENSKAP

Vi bör hålla det i meddelandet att medan du använder INSERT INTO-uttalande, måste datatyper av kolumner i käll- och måltabeller matcha varandra.

Slutsats

I RDBMS gör tabellerna lagring, hämtning, underhåll och manipulering av data på ett mest effektivt sätt. Med användning av olika kommandon kan vi ordna och manipulera data enligt affärsbehovet. Det är upp till designern / utvecklaren att se flexibiliteten i de olika kommandona och operationerna för att välja bäst för sin design och implementering.

Rekommenderade artiklar

Detta är en guide till tabell i SQL. Här diskuterar vi tabellen Introduktion och hur man skapar, släpper, raderar, byter namn, trunkerar, ändrar, hämtar data och kopierar i SQL. Du kan också titta på följande artiklar för att lära dig mer–

  1. Utländsk nyckel i SQL
  2. Transaktioner i SQL
  3. SQL Views
  4. Databas i SQL
  5. Exempel på INSERT i Oracle