Önce Plan, Sonra Proje. QuickDBD ile Veri Tabanı Diagramı

Database 12 Mar 2022

Yeni bir projeye başladığınız zaman, plansız veya yarı planlı bir şekilde girişirseniz genelde kestiremediğiniz bazı sorunlarla karşılaşırsınız. Bu tarz sorunlarla mücadele edebilmeniz için önce hazırlıklı olmanız gerekir. Bu yüzden sizlere QuickDBD ile nasıl ücretsiz veri tabanı diagramı çizebileceğinizi göstereceğim.

Bir projeye başlarken neden önce veri tabanı diagramı çizmeliyim?

Projeyi kodlamaya başlamadan önce kafanızda kodlamanız gerekir. Kendinize şu soruları sorun; Proje için temel gereksinimler nelerdir, nasıl bir dosya yapısı uygulamalıyım ve nasıl bir veri tabanı yapısı kullanmalıyım? Bu sorular projenizin ilk ve en önemli adımlarını oluşturacak. Akabinde bunu uygulamaya dökün.  Bir veri tabanı tasarlamaya başlayın; İhtiyacınız olacak veri tabanlarını oluşturun, hangi sütunların hangi değeri alacağını belirleyin. (index, nullable vb.) Bunu yaparken QuickDBD kullanmanızı öneriyorum.

QuickDBD, sol tarafta yer alan kod alanına girdiğiniz kodlara göre otomatik olarak veri tabanınızı çizmeye başlayacaktır. Örnek olması açısından sizinle beraber basit bir uygulama geliştirelim. Uygulamanın amacı standart bir stok verisi tutma olsun.

Aşağıdaki işlemde projemde kullanmak üzere "users, products ve user_products" tabloları oluşturdum. Planım şu şekilde; bir kullanıcı birden fazla ürüne sahip olabilir. Bu yüzden user_products tablosunda hangi kullanıcıya hangi ürünün ait olduğu verileri depolayıp bir ilişki oluşturacağım. Aynı zamanda user_products tablomda bulunan user_id ve product_id değerleri index olmalı. Çünkü sorgularıma hızlı yanıt dönsün istiyorum.

Sitenin sol tarafında gerekli komutları yazarak tablomu oluşturmaya başladım. Buradaki ilk satırlar tablo adını işaret ediyor. Tablo adından sonra iki adet "--" yan çizgi bırakarak (Çizgiler eksik olursa uygulama sizi uyaracaktır) sütunları yazmaya başlıyoruz. Users tablosunu ele alalım:

users
--
id int pk // [sütun adı, sütun tipi ve sütun özellikleri]
name varchar

Temeli oluşturduk. Ancak burada bir eksiklik var. Hangi tablo hangi tabloya nasıl bağlanıyor belirtmedik. Olmasını istediğimiz; user tablosu birden fazla (one to many) user_products verisine sahiptir. Aynı zaman da user_products tablosu sadece bir tane (one to one) product verisine sahiptir.

Bunu belirtmek için "FK >- [table.id]" veya one to one için "FK - [table.id] şeklinde bir yapı kullanmalısınız. Yukarıdaki örneği inceleyerek komutun kafanızda daha net oturmasını sağlayabilirsiniz.

Tablomun son hali ise şu şekilde:

users
--
id int pk
name varchar

products
--
id int pk FK >- user_products.product_id
name varchar
stock int

user_products
--
id int pk
user_id index FK >- users.id
product_id index

Quick Database Diagrams hakkında daha fazla bilgi edinmek için https://app.quickdatabasediagrams.com/ adresini ziyaret edebilir, aşağıda sizler için bıraktığım official tanıtım videosunu izleyebilir ve sonrasında gelecekteki projenize daha hazırlıklı başlayarak daha verimli bir çalışma süreci yürütebilirsiniz.

0:00
/

Etiketler