Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir eğitmen tarafından sunulan Access programında araç servis veritabanı tasarımı ve ilişkiler kurma konulu kapsamlı bir eğitim içeriğidir.
- Video, araç servis veritabanının tasarım sürecini adım adım göstermektedir. İlk olarak tablo oluşturma, veri türleri belirleme ve veri girişi yapma işlemleri anlatılmakta, ardından veritabanı tasarım prensipleri (birincil anahtar, yabancı anahtar, ilişkiler) açıklanmaktadır. Eğitmen, müşteriler, araçlar, markalar, modeller ve servisler gibi farklı tabloları nasıl oluşturup ilişkilendireceğinizi, veri tekrarını nasıl önleyeceğinizi ve ikincil anahtar (index) oluşturma konusunda pratik bilgiler vermektedir.
- Videoda ayrıca veritabanı tasarımında dikkat edilmesi gereken önemli noktalar da ele alınmaktadır: alan adlarında boşluk ve Türkçe karakter kullanmamak, tek bir tabloda birden fazla varlığa ait bilgileri saklamamak, veri tutarlılığına zorlama seçenekleri ve bilgi bütünlüğünü sağlama yöntemleri gibi konular detaylı bir şekilde açıklanmaktadır.
- Araç Servis Veritabanı Tasarımı
- Araç servis veritabanı örneği oluşturulacak ve bu veritabanında müşteri bilgileri (ad-soyad, e-posta, telefon), araç bilgileri (plaka, marka, model, üretim yılı) ve servis bilgileri (servise geldiği kilometre, sonraki servis kilometre, tarih) kaydedilecek.
- Yapılan işlemler (işlem1-8), açıklama, ücret, ödenen ve kalan tutar gibi bilgiler de veritabanında tutulacak.
- Access programı kullanılarak veritabanı oluşturulacak ve tek bir tablo olarak tasarlanacak.
- 01:26Access Veritabanı Oluşturma
- Access programı açılarak boş bir masaüstü veritabanı oluşturulacak ve dosya adı "Araç Servis Veritabanı" olarak ayarlanacak.
- Access'te veritabanı dosyaları .accdb uzantılı olarak kaydedilir ve görünüm ayarlarından dosya uzantılarını gösterme seçeneği işaretlenirse bu uzantılar görülebilir.
- Access'te tablo oluştururken veri sayfası görünümü ve tasarım görünümü olmak üzere iki farklı görüntü seçeneği bulunur.
- 04:08Tablo Tasarımı
- Tablo tasarımı sırasında ad-soyad, telefon, e-posta, plaka, marka, model, üretim yılı, servise geldiği kilometre, sonraki servis kilometre ve tarih alanları oluşturulacak.
- Yapılan işlemler (işlem1-8), açıklama, ücret, ödenen ve kalan alanları da tabloya eklenecek.
- Her alan için uygun veri türü seçilmeli: kısa metin, sayı, tarih saat, para birimi gibi.
- 08:57Veri Girişi ve Düzenlemeler
- Veri sayfası görünümünde müşteri bilgileri girilebilir ve örnek olarak Ahmet Özgür adlı bir müşteri için veriler girilmiştir.
- Servise geldiği tarih alanı eksik olduğu için tasarım görünümünde eklenmiştir.
- İki farklı servis kaydı girilmiş ve veritabanının şu haliyle zahmetli ve hataya açık olduğu belirtilmiştir.
- 14:37Veritabanı Tasarımında Birincil Anahtar Kullanımı
- Her tabloda birincil anahtar olmalı, bu teknik olarak zorunlu olmasa da iyi veritabanı tasarlamak için gereklidir.
- Her tablonun başında "id" adında otomatik artan sayı alanının olması önerilir.
- Otomatik sayı alanı, veri türü olarak sırayla bir sayı verir ve bir kayıt silinse bile verdiği sayı asla tekrarlanmaz.
- 17:18Birincil Anahtar Oluşturma ve Özellikleri
- Birincil anahtar oluşturmak için alanın üzerine sağ tıklayıp "birincil anahtar" seçeneğini kullanabilir veya tasarım sekmesindeki birincil anahtar düğmesine tıklanabilir.
- Birincil anahtar, tablodaki her bir kaydı temsil eden benzersiz bir veri sağlar, bu da bir kaydın TC kimlik numarası gibi bir benzersiz tanımlayıcıdır.
- Bir tabloda birden fazla varlığa ait kayıtlar olması veritabanı tasarımı açısından uygun değildir.
- 19:50Veritabanı Tasarımında Hatalar ve Çözümleri
- Birden fazla varlığa ait bilgilerin tek bir tabloda saklanması veritabanının boyutunu büyütür ve hatalı girişlere yol açabilir.
- Farklı varlıkları (müşteriler, araçlar, servis bilgileri) ayrı tablolarda saklamak veritabanı tasarımı için daha etkili bir yöntemdir.
- İyi veritabanı tasarımı için tablo alanlarında ve adlarında boşluk kullanılmamalı, Türkçe karakterler yerine İngilizce kullanılmalı ve her kelimenin ilk harfi büyük olmalıdır.
- 24:15Veritabanı Tasarımında Dikkat Edilmesi Gerekenler
- Birden fazla veri aynı sütunda saklanmak yerine farklı sütunlarda saklanmalıdır.
- Ad ve soyad gibi bilgiler ayrı alanlara yerleştirilmelidir, bu sayede kişileri filtrelemek daha kolay olacaktır.
- Adres bilgilerinde gibi karmaşık bilgiler için de (sokak, cadde, mahalle, ilçe, il) ayrı alanlar oluşturulmalıdır.
- 25:57Veritabanı Tasarımı ve Müşteri Tablosu
- Müşteriler tablosuna Ahmet Özgür ve Sinan Hoca adlı iki müşteri ekleniyor.
- Müşteri tablosunda ad, soyad, telefon ve e-posta sütunları yerine müşteri ID sütunu ekleniyor.
- Müşteri ID'si, müşterinin veritabanındaki TC kimlik numarası gibi bir benzersiz tanımlayıcı olarak kullanılıyor.
- 29:03Araçlar Tablosu Oluşturma
- Araçlar tablosu oluşturuluyor ve plaka, marka, model sütunları ekleniyor.
- Araçlar tablosuna Ford C-Max, Toyota Auris ve Toyota Corolla gibi araçlar ekleniyor.
- Servis tablosundan araç bilgileri siliyor ve sadece araç ID'si kullanılıyor.
- 31:35Veritabanı Tasarımını İyileştirme
- Araçlar tablosuna üretim yılı sütunu ekleniyor.
- Araçlar tablosunda marka ve model bilgilerinin tekrar etmesi sorun yaratabileceği belirtiliyor.
- Marka ve model bilgileri için ayrı bir "marka modeller" tablosu oluşturuluyor.
- 37:29Son İyileştirmeler
- Marka modeller tablosunda markaların tekrar etmesi sorun yaratabileceği belirtiliyor.
- Markalar için ayrı bir "markalar" tablosu oluşturuluyor.
- Veritabanı tasarımı, tekrar eden verileri önlemek için daha iyi bir yapıya sahip hale getiriliyor.
- 38:37Veritabanı Tasarımında Marka ve Model Tabloları
- Marka modeller tablosuna marka ID'si eklenerek marka isimlerinin yerine ID'leri saklanıyor.
- Ford için 1, Toyota için 2 gibi marka ID'leri atanıyor ve araçlar tablosunda marka model ID yerine sadece model ID kullanılıyor.
- Modeller tablosu yeniden adlandırılıyor ve araçlar tablosunda da marka model ID yerine model ID kullanılıyor.
- 41:32Servis Bilgileri Tablosunun Sorunları
- Servis bilgileri tablosunda yapılan işlemler için sınırlı alanlar var, bu da çok sayıda işlem yapıldığında sorun yaratıyor.
- Veritabanı tasarımı için iyi bir uygulama olarak bir tabloda boş bırakılan alanların mümkün olduğunca azaltılması gerekiyor.
- Açıklama alanı duruma göre doldurulabilirken, yapılan işlemler için ayrı bir tablo oluşturulması gerekiyor.
- 44:08Yeni Servis İşlemleri Tablosu Oluşturma
- Yeni bir tablo oluşturuluyor ve bu tablonun adı "servis işlemlerleri" olarak belirleniyor.
- Bu yeni tabloda servis ID'si ve yapılan işlem bilgileri saklanacak.
- Bu yapı sayesinde servis kayıtlarında hangi işlemlerin yapıldığı bilgisi ayrı bir tabloda tutulacak.
- 46:47Veritabanı Tasarımında Çoklu İşlemlerin Yönetimi
- Bir servis kaydında birden fazla işlem yapıldığında, tek bir tabloda tüm işlemleri yan yana göstermek yerine, her işlem için ayrı satır oluşturulmalıdır.
- Servis işlemleri tablosuna servis id'si eklenerek, hangi serviste hangi işlemlerin yapıldığı bilgisi tutulabilir.
- Bu yöntemle, servis id'si üzerinden bağlantı kurulduğunda, boş alanlar oluşmadan veritabanı daha etkili bir şekilde yönetilebilir.
- 49:49İşlemlerin Tekrarlanmasını Önleme
- Aynı işlemlerin (yağ değişimi, yağ filtresi değişimi vb.) tekrar tekrar yazılmasını önlemek için ayrı bir "işlemler" tablosu oluşturulmalıdır.
- "İşlemler" tablosunda her işlemin bir id'si olmalı ve servis işlemleri tablosunda bu id'ler kullanılarak işlemler referans edilmelidir.
- Bu yöntemle veritabanı daha az yer kaplar ve aynı verilerin tekrar edilmesi önlenir.
- 53:50Redundant Verileri Önleme
- Veritabanında hesaplanabilecek verileri (örneğin kalan miktar) ayrı bir alanda saklamak yerine, hesaplanabilir alanlar kullanılmalıdır.
- Access gibi veritabanı yönetim sistemleri, hesaplanmış alanlar oluşturarak formüllerle hesaplama yapabilir ve bu verileri ekranda gösterir.
- Bu yöntemle veritabanı daha az yer kaplar ve verilerin tutarlılığı korunur.
- 58:49Veritabanında İlişkilerin Önemi
- Veritabanında ilişkileri kurmak önemlidir, aksi takdirde veri tutarsızlığı oluşabilir.
- İlişkileri kurmadan veritabanında hatalı girişler yapılabilir, örneğin mevcut olmayan müşteri id'si girilebilir.
- İlişkileri kurmak veritabanındaki tablolar arasındaki tutarlılığı garanti eder.
- 59:51İlişkileri Kurma İşlemi
- Veritabanı araçlarında "ilişkiler" düğmesine tıklayarak ilişki kurma işlemi başlatılır.
- İlişkileri kurmak için önce tabloları seçip ekleme işlemi yapılır.
- İlişkileri kurmak için ortak alanları (örneğin müşteri id'si) sürükleyip bırakarak ilişki oluşturulur.
- 1:01:59İlişki Türleri ve Özellikleri
- Oluşturulan ilişki "bir'e çok ilişki" olarak tanımlanır çünkü bir müşteri id'si birden fazla servis kaydı ile ilişkilenebilir.
- İlişkileri kurmak Access'te veri görselleştirme açısından faydalıdır, ancak varsayılan olarak hatalı veri girmeyi engellemez.
- "Bilgi tutarlılığına zorla" seçeneği işaretlendiğinde, mevcut olmayan müşteri id'si girilmesi engellenir.
- 1:05:04İlişkilerin Gelişmiş Özellikleri
- İlişkilerde "ilişkili alanları artarda güncelleştir" ve "ilişkili alanları artarda sil" seçenekleri bulunmaktadır.
- "İlişkili alanları artarda sil" seçeneği işaretlendiğinde, bir müşterinin silinmesi otomatik olarak onun servis kayıtlarını da siler.
- Bu seçenek işaretlenmediğinde, ilişkili kayıtlar varsa müşteri silinemez, yani ya ikisi birden silinir ya hiçbiri silinmez.
- 1:10:23Veritabanı İlişkilerinin Kurulması
- Müşteriler ve servisler arasında "e çok" ilişki kuruldu.
- Araçlar tablosu ile müşteriler tablosu arasında müşteri ID ve araç ID üzerinden ilişki kuruldu.
- Araçlar tablosu ile modeller tablosu arasında model ID üzerinden ilişki kuruldu ve model ID araçlar tablosunda yabancı anahtar oldu.
- 1:11:56Diğer İlişkilerin Kurulması
- Araçlar tablosu ile markalar tablosu arasında marka ID üzerinden ilişki kuruldu.
- Servisler tablosu ile servis işlemleri tablosu arasında servis ID üzerinden ilişki kuruldu.
- Servis işlemleri tablosu ile işlemleri tablosu arasında işlem ID üzerinden ilişki kuruldu.
- 1:14:04Çoka Çok İlişki
- İşlemler tablosuyla servisler tablosu arasında çoka çok ilişki vardır.
- Çoka çok ilişkide iki tablo birbirine bağlı olamaz, ara bir tablo sayesinde ilişki kurulur.
- Bir serviste birden fazla işlem yapılabildiği ve bir işlem birden çok servis kaydında geçebileceği için çoka çok ilişki vardır.
- 1:15:37İlişki Kurallarının Düzenlenmesi
- Müşteriyi silerse servis kaydı da silinsin seçeneği kaldırıldı, müşteri silinmemeli çünkü bir kere gelmiş.
- İşlemi silerse servis işlemlerinden ona uygun kayıtlar silinsin seçeneği kaldırıldı, işlem silinmemeli çünkü yapılmış.
- Servis kaydı silindiyse, o servisle ilgili detayların da silinmesi için art arda sil seçeneği bırakıldı.
- 1:18:44İkincil Anahtar ve İndeks Oluşturma
- İkincil anahtar veya indeks, arama ve sıralama işlemlerinde kullanılır.
- İkincil anahtar oluştururken yineleme olup olmadığı seçilebilir; yineleme varsa aynı değer tekrar edebilir, yineleme yoksa aynı değer sadece bir kez kaydedilebilir.
- Plaka gibi alanlar için yineleme olabilir çünkü aynı plaka farklı araçlara ait olabilir.
- 1:20:16Tekrarlanan Kayıtları Engelleme
- İşlemler tablosunda aynı işlemi yanlışlıkla ikinci kez girmeyi engellemek için yineleme olmayan bir indeks oluşturulabilir.
- Markalar ve modeller gibi alanlar için yineleme olmayan indeksler oluşturulmalıdır çünkü aynı marka veya model tekrarlanmamalıdır.
- Müşteriler tablosunda ad, soyad ve telefon numarası gibi alanlar yineleme içerebilir çünkü farklı kişiler aynı bilgileri paylaşabilir.
- 1:23:14Servis İşlemleri İçin İndeks Oluşturma
- Servis tarihine göre hızlı sıralama yapmak için yineleme içeren bir indeks oluşturulabilir.
- Sanal alanlar (örneğin "kalan sıfır olmayanlar") için indeks oluşturulamaz çünkü bu alanlar veritabanında gerçek bir alan değildir.
- İki alandan oluşan birincil anahtar oluşturulabilir, bu da farklı bir yöntemdir.