Veritabanı, verilerin belli kural ve sistematiğe göre düzenlenmiş hallerine verilen addır. Veritabanı istediğiniz bilgileri, istediğiniz türde, istediğiniz sürece saklanmasını sağlamaktadır. Veritabanı herhangi bir konuda birbiriyle ilişkili ve düzenli bilgiler topluluğudur. Günümüzde, basit müşteri bilgilerinin tutulmasından büyük kapsamlı şirket verilerinin tutulmasına kadar veri depolaması gereken alanların tamamında veri tabanları kullanılmaktadır. Örneğin bankacılıktan otomotiv sanayisine, sağlık bilgi sistemlerinden şirket yönetimine, telekomünikasyon sistemlerinden hava taşımacılığına, çok geniş alanlarda kullanılan bilgisayar sistemlerinin alt yapısını oluşturmaktadır.
Veritabanı içerisinde bulunan veriler üzerinde değişiklik yapma, verileri istenilen kritere göre görüntüleme, silme veya yenisini ekleme işlemleri kullanılan veritabanının kendisi ait yazılımı veya hazırlanan program aracılığı ile gerçekleştirilebilir.
Bizde PostgreSQL' de veritabanı oluşturup bu veritabanı üzerinde SELECT, INSERT, UPDATE, DELETE, DROP gibi basit sorgular oluşturalım.
Veritabanı Oluşturma
Yeni bir veritabanı oluşturmak için öncelikle sudo su - postgres komutunu yazarak postgres kullanıcısına geçiş yapıyorum. Daha sonra psql komutunu yazıyoruz.
PostgreSQL kullanıcısına girişimi gerçekleştirdim. Daha sonra postgres=# olarak konsolda göreceksiniz burada komutlarımızı çalıştıracağız. postgres=# şuan da bağlandığımız veritabanının adıdır. Tek bir PostgreSQL sunucusu birkaç veritabanına ev sahipliği yapabilir ancak bir sefer de bunlardan birini çalıştırabilir. Şimdi deneme adında bir veritabanı oluşturalım.
CREATE DATABASE deneme; komutumuzu konsol'a yazıyoruz. Oluşturduğumuz veritabanlarını \l , yani ters slash 'el' komutunu kullanarak aşağıdaki gibi kontrol edebiliriz.
Veritabanının adını büyük harfler ile oluşturmak istiyorsak:
CREATE DATABASE "DENEME"; Veritabanımızın adını çift tırnaklar içinde yazmalıyız.
\c deneme komutu ile deneme veritabanına bağlanacağız.
Şuan da gördüğünüz gibi deneme veritabanına bağlanmış durumdayım.
Tablo Oluşturmak
Yukarıda veritabanımızı oluşturmuştuk şimdi tablo oluşturmayı görelim. CREATE TABLE, veritabanı sisteminde yeni bir tablo oluşturmak için kullanılan bir anahtar sözcüktür. personel_id, soyad, isim, adres, sehir sütunlarını içeren personel isminde bir tablo oluşturalım.
TABLO personelini oluştur (
person_id int NOT NULL,
soyad varchar(30) NOT NULL,
isim varchar(50),
adres varchar(100),
sehir varchar(14),
UNIQUE (personel_id)
);
personel_id ve soyad için belirlenen NOT NULL ifadesi tabloya veri girerken bu sütunların boş bırakılamayacağı anlamına gelir.
UNIQUE ifadesi ise personel_id ifadesini benzersiz yapmaktadır. Yani bir personel için verilen id numarası başka bir personel için kullanılamaz. Her id numarasının tek olması gerekir.
Oluşturduğumuz bütün tablo isimlerini \d komutu ile görebiliriz. Personel tablosundaki sütun başlıklarını görebilmek için \d personel komutunu konsol'a yazarsak oluşturduğumuz kolonları görebiliriz.
INSERT İfadesi
Veritabanı sistemlerinde herhangi bir tabloya yeni bir veri girişi için INSERT INTO ifadesi kullanılır. Tabloya eklenecek veriler karakter veya karakter kümesi şeklinde ise tırnak içinde yazılmalıdır. Sayısal türdeki veriler için tırnak kullanılmadan doğrudan da yazılabilirler.
Şimdi oluşturduğumuz personel tablosuna kayıt ekleyelim. 2 farklı kullanımı vardır.
1. kullanımı
INSERT INTO personel(personel_id,soyad,isim,adres,sehir) VALUES (1,'KARTAL', 'Merve', 'Fırat Üniversitesi', 'Elazığ');
2. kullanımı
INSERT INTO personel VALUES (3,'GÜNDÜZ','Devrim','Gündüz Bilişim Danışmanlığı','İstanbul');
Personel tablosuna 2 tane kayıt ekledik. Tablomuzun son durumuna bakalım.
SELECT FROM personel;
UPDATE ifadesi
Tablo içerisinde yer alan kayıtları değiştirmek için kullanılır. WHERE ifadesi ile değiştirilmek istenen kayıt veya kayıtlar seçilir. WHERE ifadesi kullanılmazsa kayıtların tamamında değişiklik gerçekleşecektir.
SET ifadesinden sonra değişiklik yapılacak sütun adı ve yeni değeri yazılmalıdır. WHERE ifadesinde karşılaştırma ( =, =!, <, >, < >, >=, <= ) operatörleri kullanılabilir.
Yukarıdaki Personel tablosunda personel_id=1 olan personelin şehir'ini İstanbul olarak güncelleyelim.
UPDATE personel SET sehir='İstanbul' WHERE personel_id=1;
Yukarıdaki ekran çıktığında görüldüğü gibi personel_id=1 olan personelin sehir=İstanbul olarak güncellendi.
Birkaç örnek ile biraz daha pekiştirelim. perseonel_id=1,5,6,7 olan personellerin 2 farklı şekilde adreslerini 'Gündüz Bilişim Danışmanlığı' olarak güncelleyelim.
UPDATE personel SET adres='Gündüz Bilişim Danışmanlığı' WHERE personel_id BETWEEN 5 AND 7;
BETWEEN ifadesi belirlediğimiz aralıktaki kayıtlar üzerinde işlem yapar. Yukarıda personel_id' si 5 ila 7 olan kayıtlar üzerinde güncelleme işlemi yapıldı.
DELETE İfadesi
Tablo içindeki kayıtların tamamını veya belli bir koşula uymayan kayıtları silmek için kullanılır. Silinmek istenen kayıt veya kayıtlar WHERE ifadesi ile belirtilen koşula göre seçilir. WHERE ifadesi ile koşul belirtilmezse tüm kayıtlar silinir.
Şimdi personel_id=8 olan Murat KARABATAK isimli personel'i silelim.
SELECT İfadesi
Tablo veya tablolardan istenilen verilerin seçimi için kullanılır. Tablo veya kayıtlar üzerinde herhangi bir değişiklik meydana gelmez. SELECT FROM personel ifadesinde en temel sorgu biçimidir, bütün kayıtların listelenmesini sağlar.
SELECT FROM personel WHERE personel_id<=4;
SELECT FROM personel WHERE sehir='İstanbul' AND (personel_id=5 OR personel_id=7);
SELECT * FROM personel ORDER BY personel_id;
ORDER BY ifadesi sıralama yapmamıza yardımcı olur. Yukarıdaki sorguda personel_id göre sıralama yaptık ve küçükten büyüğe doğru sıralama gerçekleşti.
DROP İfadesi
Veritabanı içerisinde var olan nesnelerin veya veritabanlarınının kendisini silmek için kullanılır. Deneme veritabanının içinde oluşturduğumuz personel tablosunu silelim.
Oluşturduğumuz deneme ismindeki veritabanını silelim.
DROP DATABASE deneme;
Deneme veritabanı açık olduğu için DROP DATABASE deneme; yapamayız. Öncelikle deneme veritabanından \q komutu ile çıkmamız gerek. postgres=# veritabanına DROP DATABASE deneme; komutunu vererek deneme veritabanını da silmiş olduk.
Not: Veritabanı listesini \l, yani ters slash 'el' komutunu kullanarak kontrol edebilirsiniz. Oluşturduğumuz bütün tablo isimlerini \d komutu ile görebiliriz. Sütun başlıklarını görebilmek için \d personel komutunu ile görebiliriz. İstenen veritabanına bağlanmak \c deneme komutu yazın. Burada deneme veritabanına bağlanacağız. Veritabanından çıkmak için \q komutunu kullanabilirsiniz.
No comments