SQL CREATE TABLE-setning brukes til å lage tabell i en database.
Hvis du vil lage en tabell, bør du gi tabellen et navn og definere kolonnen og hver kolonnes datatype.
La oss se den enkle syntaksen for å lage tabellen.
create table 'tablename' ('column1' 'data type', 'column2' 'data type', 'column3' 'data type', ... 'columnN' 'data type');
Datatypen til kolonnene kan variere fra en database til en annen. For eksempel støttes NUMBER i Oracle-databasen for heltallsverdier, mens INT støttes i MySQL.
La oss ta et eksempel for å lage en STUDENTS-tabell med ID som primærnøkkel og NOT NULL er begrensningen som viser at disse feltene ikke kan være NULL mens du oppretter poster i tabellen.
SQL> CREATE TABLE STUDENTS ( ID INT NOT NULL, NAME VARCHAR (20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), PRIMARY KEY (ID) );
Du kan bekrefte det, hvis du har opprettet tabellen vellykket ved å se på meldingen som vises av SQL Server, ellers kan du bruke DESC-kommandoen som følger:
SQL> DESC STUDENTER;
FELT | TYPE | NULL | NØKKEL | MISLIGHOLDE | EKSTRA |
---|---|---|---|---|---|
ID | Int(11) | NEI | PÅ | ||
NAVN | Varchar(20) | NEI | |||
ALDER | Int(11) | NEI | |||
ADRESSE | Varchar(25) | JA | NULL |
4 rader i sett (0,00 sek)
Nå har du STUDENT-tabellen tilgjengelig i databasen din, og du kan bruke til å lagre nødvendig informasjon relatert til studenter.
SQL CREATE TABLE Eksempel i MySQL
La oss se kommandoen for å lage en tabell i MySQL-databasen.
CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) );
SQL CREATE TABLE Eksempel i Oracle
La oss se kommandoen for å lage en tabell i Oracle-databasen.
CREATE TABLE Employee ( EmployeeID number(10), FirstName varchar2(255), LastName varchar2(255), Email varchar2(255), AddressLine varchar2(255), City varchar2(255) );
SQL CREATE TABLE Eksempel i Microsoft SQLServer
La oss se kommandoen for å lage en tabell i SQLServer-databasen. Det er det samme som MySQL og Oracle.
CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) );
Lag en tabell med en annen tabell
Vi kan lage en kopi av en eksisterende tabell ved å bruke kommandoen create table. Den nye tabellen får samme kolonnesignatur som den gamle tabellen. Vi kan velge alle kolonner eller noen spesifikke kolonner.
Hvis vi lager en ny tabell med en gammel tabell, vil den nye tabellen fylles med den eksisterende verdien fra den gamle tabellen.
Den grunnleggende syntaksen for å lage en tabell med den andre tabellen er:
CREATE TABLE table_name AS SELECT column1, column2,... FROM old_table_name WHERE ..... ; The following SQL creates a copy of the employee table. CREATE TABLE EmployeeCopy AS SELECT EmployeeID, FirstName, Email FROM Employee;
SQL-primærnøkkel med CREATE TABLE-setning
Følgende spørring oppretter en PRIMÆR NØKKEL i 'D'-kolonnen når tabellen 'Ansatt' opprettes.
MySQL
CREATE TABLE Employee( EmployeeID NOT NULL, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255), PRIMARY KEY (EmployeeID) );
SQL Server / Oracle / MS Access
CREATE TABLE Employee( EmployeeID NOT NULL PRIMARY KEY, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255) );
Bruk følgende spørring for å definere en PRIMÆR NØKKEL-begrensning på flere kolonner, og for å tillate navngivning av en PRIMÆRKØKKEL-begrensning.
For MySQL / SQL Server / Oracle / MS Access
CREATE TABLE Employee( EmployeeID NOT NULL, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255), CONSTRAINT PK_Employee PRIMARY KEY (EmployeeID, FirstName) );