SQL CREATE TABLE naredba koristi se za kreiranje tablice u bazi podataka.
Ako želite izraditi tablicu, trebali biste tablici dati naziv i definirati njen stupac i tip podataka svakog stupca.
Pogledajmo jednostavnu sintaksu za izradu tablice.
heapify sortirati
create table 'tablename' ('column1' 'data type', 'column2' 'data type', 'column3' 'data type', ... 'columnN' 'data type');
Tip podataka u stupcima može varirati od jedne do druge baze podataka. Na primjer, BROJ je podržan u Oracle bazi podataka za cjelobrojnu vrijednost dok je INT podržan u MySQL-u.
Uzmimo primjer za stvaranje tablice STUDENTI s ID-om kao primarnim ključem, a NOT NULL je ograničenje koje pokazuje da ta polja ne mogu biti NULL tijekom stvaranja zapisa u tablici.
SQL> CREATE TABLE STUDENTS ( ID INT NOT NULL, NAME VARCHAR (20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), PRIMARY KEY (ID) );
Možete provjeriti ako ste uspješno kreirali tablicu gledajući poruku koju je prikazao SQL Server, inače možete koristiti naredbu DESC na sljedeći način:
preimenovanje imenika linux
SQL> DESC STUDENTI;
POLJE | TIP | NULL | KLJUČ | ZADANO | EKSTRA |
---|---|---|---|---|---|
iskaznica | Int (11) | NE | NA | ||
IME | Varchar (20) | NE | |||
DOB | Int (11) | NE | |||
ADRESA | Varchar (25) | DA | NULL |
4 reda u setu (0,00 s)
Sada imate tablicu STUDENTI dostupnu u svojoj bazi podataka i možete je koristiti za pohranu potrebnih informacija vezanih uz studente.
SQL CREATE TABLE Primjer u MySQL-u
Pogledajmo naredbu za stvaranje tablice u MySQL bazi podataka.
CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) );
SQL CREATE TABLE Primjer u Oracleu
Pogledajmo naredbu za stvaranje tablice u Oracle bazi podataka.
CREATE TABLE Employee ( EmployeeID number(10), FirstName varchar2(255), LastName varchar2(255), Email varchar2(255), AddressLine varchar2(255), City varchar2(255) );
SQL CREATE TABLE Primjer u Microsoft SQLServeru
Pogledajmo naredbu za stvaranje tablice u SQLServer bazi podataka. Isti je kao MySQL i Oracle.
registarska memorija
CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) );
Napravite tablicu pomoću druge tablice
Kopiju postojeće tablice možemo izraditi pomoću naredbe create table. Nova tablica dobiva isti potpis stupca kao i stara tablica. Možemo odabrati sve stupce ili neke određene stupce.
Ako kreiramo novu tablicu pomoću stare tablice, nova tablica će biti ispunjena postojećom vrijednošću iz stare tablice.
Osnovna sintaksa za stvaranje tablice s drugom tablicom je:
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 primarni ključ s naredbom CREATE TABLE
Sljedeći upit stvara PRIMARNI KLJUČ u stupcu 'D' kada se kreira tablica 'Zaposlenik'.
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) );
Upotrijebite sljedeći upit da definirate ograničenja PRIMARY KEY na više stupaca i da omogućite imenovanje ograničenja PRIMARY KEY.
Za 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) );