PostgreSQL INSERT İfadesi ve Kullanımı

PostgreSQL de bir tabloya bir kayıt atmak istediğimizde INSERT ifadesini kullanmaktayız.

Syntax :
INSERT INTO Table_Name
(
column_1, column_2, column_3,…column_N
)
VALUES
(
value_1, value_2, value_3,…value_N
);

 

Syntax ‘ı incelediğimiz de INSERT INTO ifadesinden sonra Tablo Adı gelmekte ve sonra parantez içerisinde kayıt eklenecek kolonlar ın isimleri yazılmaktadır. Daha sonra VELUES ifadesi ile kolonlara eklenecek kayıtlar yazılarak tabloya data basımı sağlanmaktadır.

Syntax 2 :

INSERT INTO Table_Name VALUES (value_1,value_2,value_3,…value_N);

Bu şekilde de tablomuza data basabiliriz. Fakat bu demke oluyor ki biz tablomuz üzerinde ki tüm kolonlara veri basacağız. Yani Tablo Adından sonra tablo basılacak kolonları yazmıyorsak eğer bu syntax2 de olduğu gibi tüm kolonlara veri basacağız anlamına geliyor ve Values de tabloda ki kolon kadar veri basılması gerekiyor.

Örneğin aşağıda ki gibi bir Company tablomuz olsun.

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL,
   JOIN_DATE	  DATE
);

Oluşturduğumuz bu tabloya veri basalım ;

INSERT INTO COMPANY 
(
ID,NAME,AGE,ADDRESS,SALARY,JOIN_DATE
) 
VALUES 
(
1, 'Yusuf', 31, 'Istanbul', 40000.00,'2012-01-01'
);

Daha sonra tablomuzun içerisini kontrol edelim ;

SELECT * FROM Personel;

Company tablosuna maaşını bilmediğimiz bir kayıt atmak istediğimiz deki INSERT ifademiz ise ;

INSERT INTO COMPANY 
(
ID,NAME,AGE,ADDRESS,JOIN_DATE
) 
VALUES 
(
2, 'Yaşar', 57, 'Rize', '2012-01-01'
);

Örneğimizde göründüğü üzere Tablo adımızdan sonra yer alan kolon isimlerinde SALARY kolonu yer almamaktadır. Bu şekilde de kayıt girilmesi zorunlu olmayan tablolara kayıt girilmediği süreçleri gerçekleştirebilrsiniz.

 

SELECT * FROM Personel;

Diğer Syntax2 modelimizlede INSERT işlemi yapmak istediğimizde ;

INSERT INTO COMPANY  
VALUES 
(
3, 'Şevket', 75, 'Rize', 90000.00,'2012-01-01'
);

Tablomuzu kontrol ettiğimiz de ;

SELECT * FROM Personel;

 

Leave a Reply

Your email address will not be published. Required fields are marked *