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.