Programlama

PostgreSQL

PostgreSQL nedir?

PostgreSQL’in kökü Berkeley’de Michael Stonebraker’in POSTGRES işidir. SQL ile konuşan açık biçim 1996’da PostgreSQL adını aldı. Kısa adı Postgres’tir. Program kendi çalışır ve portu genellikle 5432’dir. Ona bağlanır, tablo açar, satır yazarsın ve koşula göre okursun. Veri diskin üstünde kalır. Makine kapanıp açılınca yazılmış satır gitmez. Bunu sana bir .db dosyası gibi vermez. Yedek ayrı komutla alınır.

PostgreSQL ne için kullanılır?

PostgreSQL çok kişinin aynı anda yazdığı veri içindir. Sipariş, kullanıcı ve hesap onun yeridir.

  • Sitenin kullanıcı listesini tutmak
  • Siparişi satır satır yazmak
  • Aynı tabloyu birkaç programın okuması
  • Rapor için koşullu sorgu yazmak

PostgreSQL ile ne yapılabilir?

PostgreSQL ile tablo yaratır, satır ekler ve seçersin. Sayfayı çizmez ve Python çalıştırmaz. Program ona sorgu gönderir, o cevabı döndürür. Çok yazan olunca sıra tutar ki iki kişi aynı satırı bozmasın. Parolasız açık bırakmamak gerekir. Ağdan herkese açmamak da gerekir.

PostgreSQL öğrenmek zor mu?

Bir tablo açmak kolaydır. Zorluk bağlantı ve sorgudadır. Kullanıcı veya port yanlışsa program hiç bağlanamaz. Sorguya kullanıcının yazısını yapıştırmak enjeksiyon açar. Büyük tabloda koşulsuz okumak yavaş olur. Yedek alınmazsa disk hatası satırları götürür. MySQL için yazılmış sorgu burada her sözüyle çalışmayabilir.

Avantajları ve sınırları

Avantaj: çok kişi yazabilir, veri diskte kalır, sorgu güçlüdür. Sınır: sunucuyu kurmak ve korumak gerekir. PostgreSQL, MySQL değildir ve SQLite değildir.

Temel kavramlar

Tablo sütunların adıdır. Satır bir kayıttır. Sunucu ise o tabloyu açık tutan programdır.

  • Kendi süreci gibi çalışır
  • Port genellikle 5432’dir
  • SQL sorgusu satır seçer
  • Yedek kendi alınmaz

Kısa örnek

Bu sorgu bir tablo açar. Sunucu zaten çalışmalıdır. Dosyayı elinle yaratmazsın.

CREATE TABLE reader (
  id integer PRIMARY KEY,
  name text
);

Sık sorulan sorular

  • PostgreSQL ve MySQL aynı mı? Hayır. İkisi de SQL sunucusudur. Program ayrıdır ve her sorgu sözü aynı çalışmayabilir.
  • PostgreSQL ve SQLite aynı mı? Hayır. SQLite bir dosyadır ve ayrı sunucu açmaz. PostgreSQL kendi sürecinde çalışır.
  • Postgres başka bir taban mı? Hayır. Postgres, PostgreSQL’in kısa adıdır.