3.3. Tablolara Satırların Girilmesi

INSERT cümlesi tablolara veri girişi için kullanılır:

INSERT INTO hava_durumu VALUES ('San Francisco', 46, 50, 0.25, '1994-11-27');

Veri giriş işlemlerinde tüm verilerin açıkça belirtilmesi gerekir. Sabitler sadece basit rakamsal değerler değildir, örnekte görüldüğü gibi tek tırnak içine alınıp belirtilmeleri şarttır. date türü esnek bir çeşit olduğundan neredeyse girilen tüm tarih çeşitlerini kabul eder. Fakat biz bu belgede belirsizlik yaratmaması açısından bu örnekteki biçimi kullanacağız.

point veri türü için bir koordinat çiftine ihtiyacımız olacak:

INSERT INTO iller VALUES ('San Francisco', '(-194.0, 53.0)');

Çok sayıda sütun olduğunda bilginin hangi sırada girileceğini hatırlamanız zorlaşır. Sütun isimlerinin de belirtilebileceği bir sözdizimi bunu kolaylaştırır:

INSERT INTO hava_durumu (il, asg_sck, azm_sck, yağış, tarih)
    VALUES ('San Francisco', 43, 57, 0.0, '1994-11-29');

İsterseniz, yukarıda bahsedilen yöntemi kullanarak verileri gireceğiniz sütunların yerlerini değiştirebilir ya da hiç yokmuş gibi farzedebilirsiniz, örneğin yağış miktarını yoksayalım:

INSERT INTO hava_durumu (tarih, il, azm_sck, asg_sck)
    VALUES ('1994-11-29', 'Hayward', 54, 37);

Birçok geliştirici mevcut sütun sırasına göre veri girmektense sıralamayı açıkça belirtmeyi tercih eder.

Lütfen yukarıdaki komutların hepsini girin ki, ileride üzerinde alıştırma yapabileceğimiz bir kaç verimiz olsun.

Çok fazla komutu teker teker girmek yerine bunların hepsini tek bir metin dosyasından COPY cümlesi ile okutabilirsiniz. COPY cümlesi sırf bu amaç için tasarlandığından INSERT cümlesine göre daha hızlı çalışmasına karşın, onun kadar esnek değildir. Bir örnek:

COPY hava_durumu FROM '/home/user/hava_durumu.txt';

Belirtilen dosya sunucunun erişebileceği bir yerde olmalıdır, istemcinin değil. COPY cümlesi hakkında daha fazla bilgi için PostgreSQL belgelerindeki COPY cümlesinin açıklamasına bakınız.