logo

SQL TABLO OLUŞTUR

SQL CREATE TABLE deyimi veritabanında tablo oluşturmak için kullanılır.

Bir tablo oluşturmak istiyorsanız tabloya bir ad vermeli, sütununu ve her sütunun veri türünü tanımlamalısınız.

Tabloyu oluşturmak için basit sözdizimini görelim.

 create table 'tablename' ('column1' 'data type', 'column2' 'data type', 'column3' 'data type', ... 'columnN' 'data type'); 

Sütunların veri türü bir veritabanından diğerine değişebilir. Örneğin, NUMBER, Oracle veritabanında tamsayı değeri için desteklenirken, INT MySQL'de desteklenir.

Birincil anahtarı ID olan ve NOT NULL olan bir STUDENTS tablosu oluşturmak için örnek alalım, tabloda kayıt oluştururken bu alanların NULL olamayacağını gösteren kısıtlamadır.

 SQL> CREATE TABLE STUDENTS ( ID INT NOT NULL, NAME VARCHAR (20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), PRIMARY KEY (ID) ); 

Tabloyu başarılı bir şekilde oluşturduysanız SQL Server tarafından görüntülenen mesaja bakarak bunu doğrulayabilirsiniz, aksi halde DESC komutunu aşağıdaki gibi kullanabilirsiniz:

SQL> DESC ÖĞRENCİLERİ;

ALANTİPHÜKÜMSÜZANAHTARVARSAYILANEKSTRA
İDDahili(11)HAYIRAT
İSİMVarchar(20)HAYIR
YAŞDahili(11)HAYIR
ADRESVarchar(25)EVETHÜKÜMSÜZ

Sette 4 satır (0,00 sn)

Artık veritabanınızda STUDENTS tablosu var ve öğrencilerle ilgili gerekli bilgileri depolamak için kullanabilirsiniz.

MySQL'de SQL CREATE TABLE Örneği

MySQL veritabanında tablo oluşturma komutunu görelim.

 CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) ); 

Oracle'da SQL CREATE TABLE Örneği

Oracle veritabanında tablo oluşturma komutunu görelim.

 CREATE TABLE Employee ( EmployeeID number(10), FirstName varchar2(255), LastName varchar2(255), Email varchar2(255), AddressLine varchar2(255), City varchar2(255) ); 

Microsoft SQLServer'da SQL CREATE TABLE Örneği

SQLServer veritabanında tablo oluşturma komutunu görelim. MySQL ve Oracle ile aynıdır.

 CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) ); 

Başka bir tablo kullanarak Tablo oluşturma

Create table komutunu kullanarak mevcut bir tablonun kopyasını oluşturabiliriz. Yeni tablo, eski tabloyla aynı sütun imzasını alır. Tüm sütunları veya belirli bazı sütunları seçebiliriz.

Eski bir tabloyu kullanarak yeni bir tablo oluşturursak, yeni tablo eski tablodaki mevcut değerle doldurulacaktır.

Diğer tabloyla bir tablo oluşturmanın temel sözdizimi şöyledir:

 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; 

CREATE TABLE İfadesi ile SQL Birincil Anahtarı

Aşağıdaki sorgu, 'Çalışan' tablosu oluşturulduğunda 'D' sütununda bir PRIMARY KEY oluşturur.

MySQL

 CREATE TABLE Employee( EmployeeID NOT NULL, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255), PRIMARY KEY (EmployeeID) ); 

SQL Sunucusu / Oracle / MS Erişimi

 CREATE TABLE Employee( EmployeeID NOT NULL PRIMARY KEY, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255) ); 

Birden çok sütunda PRIMARY KEY kısıtlamalarını tanımlamak ve PRIMARY KEY kısıtlamalarının adlandırılmasına izin vermek için aşağıdaki sorguyu kullanın.

MySQL / SQL Server / Oracle / MS Access için

 CREATE TABLE Employee( EmployeeID NOT NULL, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255), CONSTRAINT PK_Employee PRIMARY KEY (EmployeeID, FirstName) );