LIVE
🏛️ LEGEND Superman record held by Prens for 16 years — unbeaten!
🏛️ LEGEND Motorcycle Racing record held by aariif for 17 years — unbeaten!
user arinberk commented: Shaped Nile Tiles “Çok eğlenceli! 🔥”
user bidibidi New Record! Fun Buttons
bidibidiAI user
bidibidim bidibidim joined the legends!
bidibidiAI user
bidibidi bidibidi has been with us for 20 years, a true legend!
bidibidiAI user
1903dogumlular Hail, 1903dogumlular! Three years of loyalty! A true veteran, your wisdom guides us!
game NEW GAME: Knowledge Cube
game NEW GAME: Ancient Gods
game NEW GAME: History of Empires

Veritabanı (database) nedir?

started by BIDIBIDI 29 June 2006 20-year-old topic 0 Replies 2.359
PHPNuke, PostNuke gibi portallar sistemi veritabanı kullanarak çalışır.

Veritabanı neye benzer? Eğer Microsoft Office yada OpenOffice kullandıysanız tablolama yazılımını bilirsiniz. Örneğin Excel de nasıl satır ve sütunlar varsa veritabanı da aynı şey diyebilirim.
Web tasarımında perl gibi dillerle çeşitli dosyalara eklemeler yapma, dosyadaki verileri okutmayı yada veri silmeyi duymuşsunuzdur. En basit şekilde bir sayfa sayacı bu şekilde olabilir. Yani bir dosya oluşturursunuz, onun içine bir sayı yazarsınız. Sonra bir script yardımı ile bu dosyadaki sayıyı her ziyaretçi gelişince okutur, ekleme yaptırır ve sayfaya son halini yansıtırsınız.

Elinizde çok miktarda bilgi olduğunu düşünün. Bu bilgileri bir düz yazı dosyasında saklamak bir yere kadar mümkündür. Bir de bırakın verinin çok yada az oluşunu, düz yazı dosyası şeklinde bu veriyi saklayıp, daha sonra istediğiniz zaman düzenlemeye yada değiştirmeye kalkmak bir deveye hendek atlatmaktan zordur. Durum böyle olunca çözüm veritabanı oluyor. Başka bir açıdan daha bakalım. Site trafiğiniz yüksekse, dosyalar üzerinde açma, kapama veri okuma, veri yazma gibi işlemlerde sunucunuz yerlerde sürünür. Açıkçası veri dosyaları ile çalışmak sitenin efektifliğini ve dinamik yapısını bozan bir etkendir. Çözüm yine aynı veritabanı sunucusu kullanmak. Veritabanı sunucusu olarak, Office Uygulamalarından bilinen access, Ms-Sql, PostgreSQL, InterBase, mSQL, Oracle, SyBase ve tabii ki mySQL akla gelir. Bunlara, database engine ( veritabanı motoru ) adı verilir.Veritabanı sunucusu birbirinden bağımsız birçok veritabanını bünyesinde barındırabilir. Her bir veritabanının tabloları olur ve veriler bu tablolarda saklanır. Structured Query Language (SQL) yani türkçesiyle yapısal sorgulama dili adı verilen veritabanı sorgulama dili ile tablolar sorgulanabilir, üzerinde veri ekleme, silme ve değiştirme gibi işlemler yapılabilir. Bir veritabanındaki veriler tablolarda tutulur. Şöyle bir yapı mevcuttur. Aşağıdaki şekilde mysql veritabanındaki tabloları görüyorsunuz.

+-----------------+
| Tables_in_mysql |
+-----------------+
| columns_priv |
| db |
| func |
| host |
| tables_priv |
| user |
+-----------------+

SQL, veritabanları ile iletişimde bulunmak için geliştirilen standart bir dildir. Tabloların içeriğinde satır ve sütunlar mevcuttur. Sütunların her biri farklı veri tutabilir.Nuke_main tablosu şu şekildedir.

+-------------+
| main_module |
+-------------+
| Bos |
+-------------+

Yukarıda göreceğiniz gibi nuke_main tablosunda main_module sütunun adını tanımlayan bir alan ve Bos ise bu sütunun içeriğidir. Başka bir veritabanı tablosunun içeriğine bakalım. Bu tablomuz nuke_session olsun. Bu tablomuzun yapısı ve içeriği ise şu şekilde.

+-----------+------------+-----------+-------+
| username | time | host_addr | guest |
+-----------+------------+-----------+-------+
| 127.0.0.1 | 1040062479 | 127.0.0.1 | 1 |
+-----------+------------+-----------+-------+

Burada göreceğiniz üzere bu tabloda ise 4 tane sütun var. Bunlar sırayla, username, time, host_addr ve guest adındadırlar. Burada time anlaşılacağı üzere bir zaman. Ancak zamanı değil anlamsız sayıları gösteriyor olması bir hata değildir. PHP tarih ve saat verisini sunucudan epoch adı verilen bir formatta okur. Bu veriyi biz düzenler ve anlaşılır hale getiririz. Yukarıdaki iki tabloda da sadece tek veri mevcuttur. birden fazla verinin bulunduğu tablolara nuke_access denir.İçeriği asagıdaki gibidir.

+-----------+-----------------+
| access_id | access_title |
+-----------+-----------------+
| -1 | Deleted |
| 1 | User |
| 2 | Moderator |
| 3 | Super Moderator |
| 4 | Administrator |
+-----------+-----------------+
This topic was opened 20 years ago. Replying will be possible soon.