1- Veritabanı işlemleri, tablo türlerinin genel özellikleri

Merhaba, bu rehberimizde ilk adımımızı veritabanımız ile başlıyoruz. Veritabanı bir yazılımdaki tüm bilgileri saklayabileceğimiz alandır kısacası hafıza olarak düşünebilirsiniz. Bir yazılım yazarken kullanacağımız alanların özellikleri, tablo yapıları oldukça mühim hususlardır. Bir proje yapacağınız zaman ilk olarak veritabanını tasarlamanız gerekir örneğin projede ihtiyaçınız olacak özellikler nedir bu özelliklerin tablo isimleri nasil olacak sütünların türleri neler olacak gibi bir plan yapmanız size +zaman kazandıracaktır. Şimdi hemen konumuza başlayalım.

Oluşturduğunuz bir veritabanı olduğunu varsayarak phpmyadmin'e girdiğimizi düşünelim..


karşımıza böyle bir ekran geliyor (tabii sizde tablo olmadığı için boş bir ekran görmüş olacaksınız..) burada yeşil olarak işaretli alan mevcut tablo isimleri kırmızı olan ise bu tablonun dilini gösteriyor. Bazı sunucular da işlem yapılmadığı sürece tablo dilleri (yenil açılan bir tablo ise özellikle) latin olarak işaretli geliyor ve sizde veri eklerken Türkçe karakter kullandığınız zaman otomatik olarak karakter sorunu yaşıyorsunuz bunun en basit sorunlarından birisi tabloların dil seçenekleri ile alakalı olabiliyor. Buyüzden tabloların dil özelliğinin utf8_turkish_ci olmasına dikkat edelim. Aynı zamanda işlemler alanından utf8_turkish_ci seçeneğini seçip yeni açılacak tablolarda bu özelliği kullandırmayı zorunlu hale getirebilirsiniz.


Evet şimdi gelelim yeni bir tablo oluşturmaya diyelim ki bir sayfa için tablo yaratacağımızı düşünelim örneğin hakkımızda sayfası olsun bizim için gerekli olacak sütünları inceleyelim.

1- hakkımızda için bir başlık atayabiliriz. (hakkımızda_baslik)
2- hakkımızda için bir açıklama yazısı olmalı (hakkımızda_aciklama)
3- birde fotoğraf ekleyelim açıklama yazısının altına yada üzerine (hakkımızda_foto)
4- birde misyon ve vizyon için sütün açtıralım (hakkımızda_misyon - hakkımızda_vizyon)
5- seo için şu sayfa başlığı anahtar kelimeleri ve açıklamalarını da panelden çektirelim istiyorum (sayfa_baslik, sayfa_aciklama, sayfa_anahtar)

evet bir test veritabanı için daha ne olsun :-) şimdi baktığımıza göre bizim için 8 tane sütün + 1 adet de id için sütün açmamız ideal görünüyor

evet şimdi geldik tablomuzun içeriklerini doldurmaya :-) yeşil olan alanımız tablo'daki sütünların isimleri(yukarıda yazdığımız hakkımızda_baslik, hakkımızda_aciklama isimlerinin yazılacağı alandır.) kırmızı olan ise o sütünün türünü belirlemek bu türlerin genel anlamlarını size alt satırlarda anlatıyor olacağım. Örneğin id kısmı int olmalı (sadece rakam) bu sayede o sütünün id'sini belirleyip php alanlarında rahat bir şekilde kullanmamıza imkan sağlıyor. Turuncu alan ise bu sütünda en fazla kaç uzunluk kullanabileceğimizi belirliyoruz örneğin bir tabloda T.C kimlik numarası almak istiyorsunuz burada ki türünü INT yapıp uzunluk değerini 11 yaparsanız eğer 12. karakteri yazdıramayacağı için hata verdirmemizi sağlayacak en son mavi olan ise ilk veriden sonra otomatik olarak id değerini arttırmamızı istiyoruz örneğin bir veri ekledik (1. sütün id değeri olacağını varsayarak anlatıyorum.) 1. sütünün id=1 bir sonraki id=2 bir sonraki id=3 bir sonraki id=4 bunun otomatik olarak arttırmamızı sağlayan seçenek A_I (auto_ıncrement) özelliğidir. Örneğin biz sayfa_basligi, sayfa_aciklama ve sayfa_anahtar sütünlarını açmiştik bunu ise seo için yapmıştık ama bunu tablo da zorunlu değildir diye belirtmediğimiz için biz veri eklemek istediğimiz de bu 3 sütünü boş bırakırsak eğer sistem hata verecektir zorunlu alan doldurmamız gerektiğini belirtecektir. Şimdi bu tarz durumlar için ne yapmamız gerekli bu sütünü boş da olabilir dolu da olabilir diye belirtmemiz gerekiyor çünkü bu tarz eylemler'de bazen sonra güncelleriz denildiği için herzaman boş da kalabilir olarak işaretlemeliyiz bunu nasil yapariz peki çok basit Boş yazan kısımdaki checkbox'u işaretlemimiz yeterli olacaktır.

Bu adım'dan sonra artık tablomuzu oluşturmuş olacağız.

Evet şimdi gelelim bu tablo içinde türü olarak görünen (int, varchar, text gibi verilerin genel açıklamalarına)

INT = rakam geçerlidir.
VARCHAR = standart olarak kelime ve rakam içerir (max. kullanım 999 karakter ile sınırlıdır.)
TEXT = standart olarak kelime ve rakam içebilir herhangi bir kullanım limiti yoktur. Editör ile makale veya açıklama gibi karakteri yüksek kullanım içeren tür
DATE = tarih kullanımı için
TIMESTAMP = bu seçeneği sağlıklı kullanmanız için boş olarak işaretleyip + varsayılan kısmını current_timestamp olarak işaretlemeniz halinde bir veri kayıt ettiğiniz zaman otomatik olarak o verinin kayıt tarihi / kayıt saatini bu tabloya yazdırmanızı sağlayacak.

bunun gibi birçok özellik içeren türler vardır bizlerin genellikle kullandiği çoğu türler bunlardır, türler için daha detaylı listeyi internetten bulabilirsiniz.