SQL Hasta-Personel Veri Tabanı Uygulaması #1

Bu bölümde örnek bir veri tabanı oluşturulmasından bahsedeceğim. Oluşturacağımız veri tabanı Hasta-Personel bilgilerini saklayan bir veri tabanı olacaktır. Veri tabanımızın yapısını aşağıdaki şema ile gösterebiliriz.

Veri Tabanı Diagramı

Bu tablolara eklenecek olan veriler aşağıdaki tablolarda listelenmiştir.

Veri Tabanındaki Tablolara Eklenecek Sütunlar
Ziyaret Durumu
Ziyarete Uygun
Kısıtlı Ziyaret
Ziyarete Kapalı
Sağlık Durumu
Normal
Rahatsız
Kritik
Vefat
Medeni Hal
Evli
Bekar
Dul
Boşanmış
Çalışma Durumu
Çalışıyor
Yıllık İzinde
Raporlu
İstifa Etti
Emekli Oldu
Hastanın Bulunduğu Yer
Hasta Odası
Ameliyathane
Morg
Yoğun Bakım
Öğrenim Türü
İlkokul Mezunu
Ortaokul Mezunu
Lise Mezunu
Önlisans Mezunu
Lisans Mezunu
Yüksek Lisans Mezunu
Doktora Mezunu
Hastalıklar Tablosu
Kalp-Damar Hastası
Böbrek Yetmezliği
Karaciğer Yetmezliği
Sinirsel Bozukluk
Alzheimer
Göz Bozukluğu
İşitme Sorunu
Şeker Hastalığı
Kolesterol Hastalığı
Kemik Erimesi
Solunum Yetmezliği
Bağırsak Kanseri
Yaralanma
Kırık-Çıkık
Hastalığı Yok
Prostat Kanseri
Şehir
İstanbul
Ankara
İzmir
Bursa
Kocaeli
Nevşehir
Antalya
Adana
Muğla
Diyarbakır
Mardin
Erzurum
Balıkesir
Trabzon
Niğde
Ordu
Osmaniye
Şanlıurfa
Sivas
Samsun
Meslekler
KBB Doktor
Hemşire
Hasta Bakıcı
Temizlik Personeli
Danışman
Güvenlik Görevlisi
Genel Cerrah
Anestezi Uzmanı
Morg Görevlisi
Adli Tıpçı
İç Hastalıkları Uzmanı
Beyin Cerrahı
Göz Doktoru
Üroloji Doktoru
Nefroloji Doktoru
BaşHekim
Ortopedi Doktoru
Kadın Hastalıkları Doktoru
Personel Kademesi
Alt Kademe
Orta Kademe
Üst Kademe

Böylece oluşturacağımız veri tabanı yapısını ve verileri görmüş olduk. Şimdi bu veri tabanını oluşturalım. Bunu sorgu komutları ile yapalım.

Veri Tabanı Ve Tabloların Kodlar İle Oluşturulması

CREATE DATABASE Hasta_Personel_Veri_Tabani

Sorguyu çalıştırdığımızda veri tabanımız oluşturulmuş olur. Veri tabanımızda oluşturmamız gereken tabloları isterseniz Object Explorer (Nesne gezgini) kısmından isterseniz sorgu komutları ile oluşturabilirsiniz. Sorgu komutları için aşağıdaki gibi komutlar kullanılabilir:

CREATE TABLE SehirTablosu(
  ID INT IDENTITY(1,1) PRIMARY KEY,
  SehirAdı   varchar(30)
)
CREATE TABLE MeslekTablosu(
  ID INT IDENTITY(1,1) PRIMARY KEY,
  MeslekAdi   varchar(30)
)
CREATE TABLE HastalıkTablosu(
  ID INT IDENTITY(1,1) PRIMARY KEY,
  HastalikAdi   varchar(30)
)

Ziyaret durumu, sağlık durumu, medeni hal ve çalışma durumu gibi tabloların oluşturulma komutları yukarıdaki örnekler ile aynı olduğundan bunlar ve benzeri tabloların oluşturulma komutlarını buraya eklemiyorum. Bunlardan farklı olarak personel kademesi, çalışma durumu, hasta tablosu ve personel tablolarını oluşturalım.

CREATE TABLE CalismaTablosu(
  ID INT IDENTITY(1,1) PRIMARY KEY,
  SaglikDurumu INT,
  CalismaDurumu INT,
)
CREATE TABLE PersonelKademeTablosu(
  ID INT IDENTITY(1,1) PRIMARY KEY,
  GerekenMinEgitim INT,
  Kademe varchar(10),
)

CREATE TABLE PersonelTablosu(
  ID INT IDENTITY(1,1) PRIMARY KEY,
  AdSoyad varchar(40),
  Yas TINYINT,
  Maas Decimal(10,2)
  Cinsiyet INT,
  Sehir INT,
  Ögrenim INT,
  Meslek INT,
  HastalikTürü INT,
  MedeniDurum INT,
  CocukSayisi TİNYİNT,
  CalismaDurumu INT
)
CREATE TABLE HastaTablosu(
  ID INT IDENTITY(1,1) PRIMARY KEY,
  Ad_Soyad varchar(40),
  Yas TINYINT,
  Cinsiyet varchar(1),
  Hastalik INT,
  MedeniDurum INT,
  İlgilenenPersonel INT,
  SaglıkDurumu INT,
  ZiyaretDurumu INT,
  HastanınBulunduğuKonum INT,
  BosSutun char(5)
)

Örnekler

Bu komutları yazarken dikkat ettiyseniz bazı yerleri eksik, yanlış ya da alakasız değerler yazdık. Bunun sebebi DDL komutlarını bu örnek veri tabanı üzerinde basit de olsa görebilmektir.

Örnek 1:  Hasta tablosundan BosSutun adlı sütunu kaldırınız.

ALTER TABLE HastaTablosu DROP COLUMN BosSutun

Bu sorgunun ardından hasta tablomuzda BosSutun adlı bir sütun olmayacaktır. Bunu Object Explorer (Nesne gezgini) sekmesinden tabloyu görüntüleyerek görebilirsiniz.

Örnek 2:  Personel tablosuna Kademe adlı bir sütun ekleyiniz.

ALTER TABLE PersonelTablosu ADD Kademe INT

Örnek 3:  Personel tablosundaki cinsiyet sütununun veri türünü değiştiriniz.

ALTER TABLE PersonelTablosu ALTER COLUMN Cinsiyet Varchar(1)

Bu komutların ardından veri tabanında yer alan tablolar artık istediğimiz şekilde olacaktır. Bu sebeple tablolarımıza Object Explorer (Nesne gezgini) sekmesini kullanarak veri girişlerini yapalım. Veri girişlerinin ardından hasta tablosunu ve personel tablosunu listeleyelim.

Hasta Tablosu
Personel Tablosu

Örnek 4:  Personel tablosuna (Onur Taylan, 46, 5000, E, 5, 5, 9, 15, 1, 3, 1, 3) ve (Mehmet Emin, 38, 3200, E, 4, 3, 5, 15, 1, 3, 1, 2) kişileri ekleyelim.

INSERT INTO PersonelTablosu VALUES (‘Onur Taylan’, 46, 5000, ‘E’, 5, 5, 9, 15, 1, 3, 1, 3)

INSERT INTO PersonelTablosu VALUES (‘Mehmet Emin’, 38, 3200, ‘E’, 4, 3, 5, 15, 1, 3, 1, 2)

Örnek 5: Personel tablosundan Mehmet Emin isimli kişiyi çıkaralım.

DELETE FROM PersonelTablosu WHERE AdSoyad =’Mehmet Emin’

Buraya kadar yaptıklarımızla veri tabanını oluşturduk. Yukarıdaki veri tabanı şemasına baktığımızda tablolar arasında ilişkiler olduğu görülüyor. Bir sonraki yazıda veri tabanımız üzerindeki tablolar arası ilişkileri oluşturacağız, DML komutlarını ve Aggregate fonksiyonlarını kullanacağız. Bir sonraki yazıya ulaşmak için buraya tıklayınız.

SQL121378HK02225Y7