insert (Tabloda İstenilen Kolona Yeni Bir Satır Ekleme )

INSERT INTO table_name (column1, column2, …) VALUES (value1,
value2, …);

**Kolon1, kolon2 .. ifadeleri ekleme yapılacak sütunu ,
**Değer1, değer2 .. ifadeleri bu sütunlara eklenecek değerleri gösterir.
**Sütun ve değer listelerindeki sütunlar ve değerler aynı sırada olmalıdır.

Örnek : Aşağıdaki örneklerde film tablosunun kolonlarına değerler eklemek için
sorgular çalıştırılmıştır.

insert into film (film_id, length, release_year, language_id) values (10004, 115, 2015, 6) ;
ERROR: null value in column “title” of relation “film” violates not-null constraint
DETAIL: Failing row contains (10004, null, null, 2015, 6, 3, 4.99, 115, 19.99, G, 2022-11-12 15:36:13.187935, null, ).

Sorgu sonucu ekranda dönen mesajda ‘title’ kolonunun not null constraint’e sahip olduğu ve boş geçilemeyeceği belirtilmiştir.

insert into film (film_id , title ,length , release_year , language_id) values (100 , 'film',115 , 2015 , 6) ;

ERROR: duplicate key value violates unique constraint “film_pkey”
DETAIL: Key (film_id)=(100) already exists.

Sorgu sonucu ekranda dönen mesajda film_id kolonunun unique kısıtına sahip olduğu
ve film_id = 100 değerinin daha önce kullanılmasından dolayı kullanılmayacağı
belirtilmiştir.

insert into film (film_id , title ,length , release_year ,
language_id) values (10001 , ‘film’,115 , 2015 , 18) ;

Sorgu sonucu ekranda dönen mesajda ‘language_id’ kolonunun ‘language’
tablosunda referanslı bir foreign key kısıtına sahip olduğu belirtilmiştir. Bu sebeple bu
kolona değer eklerken language tablosunda language_id değerleri kontrol edilmeli
ve bu değerlerden biri seçilmelidir.

Tüm bu sorguları düzenleyip hatasız çalışmasını sağlarsak yeni sorgu şu şekilde olur.

insert into film (film_id , title ,length , release_year ,
language_id) values (10001 , ‘film’, 115 , 2015 , 2);

Tablodaki tarih türündeki (date type) bir kolona tarih değeri eklemek için tarih
‘YYYY-AA-GG’ (‘YYYY-MM-DD’) biçiminde kullanılır.

insert into rental (rental_date , inventory_id , customer_id ,
staff_id) values ('2005-02-15', 80, 25, 2) ;

Eklenen satırın tüm kolonlarını görüntülemek için INSERT komutunun sonuna RETURNING ifadesi eklenir.

insert into rental (rental_date , inventory_id , customer_id , staff_id) values('2005-02-15', 81, 25, 2) returning * ;

Eklenen satırdaki belli bir kolonu görüntülemek için ;

insert into rental (rental_date , inventory_id , customer_id ,
staff_id) values('2005-02-15',82,25,2) returning rental_id as id;

Kategori seçin...