SQL Nedir?

SQL (Structured Query Language), Türkçe anlamıyla “Yapılandırılmış Sorgu Dili” manasına gelen bir programlama sistemidir. IBM tarafından geliştirilmiştir. Esasen tam olarak bir programla dili olmasa da, veritabanları üzerinde işlem yapılmasına olanak sağlayan bir alt dildir. Yalnızca veritabanları üzerinde çalışabilir. Mevcut veritabanlarına bilgi ekleme, bilgi değiştirme, bilgi silme ve bilgi sorgulama işlevleri için kullanılır.

Veritabanı mantığı programlama alanında kullanıma geçmeye başladığı andan itibaren, tablolar üzerinde çalışabilen yazılımlara ihtiyaç duyuldu. Bu doğrultuda günümüzde kullanılan adıyla SQL doğmuş oldu. SQL veritabanı yönetim sistemi, önceki benzerlerinden farklı olarak tek seferde birden fazla tabloya erişme ve bunlar üzerinde işlem yapma imkanı sağladı. Bu sayede eski veritabanı işleme dilleri olan VSAM ve ISAM dillerinden çok daha işlevsel ve hızlı bir sistem yaratmanın yolunu açtı. Günümüzde halen sektör standartı olarak kabul edilir ve veritabanı üzerinde çalışılan hemen hemen her projede SQL kullanılmaktadır.

SQL Ne İşe Yarar?

SQL, veritabanları üzerinde işlem yapmayı sağlayan, söz ve komut dizilerinden oluşan bir dildir. SQL sayesinde veritabanı içindeki tablolara veriler yazılabilir, veriler silinebilir, değiştirilebilir ya da listelenebilir. Veritabanları üzerinde yapılabilecek tüm işlemler için SQL dili kullanılır. SQL ile verileri yönetebildiğiniz gibi, baştan tasarlayabilirsiniz de. Veritabanı üzerinde imkanları oldukça çeşitlidir.

İlişkisel Veritabanı (Relational Database) tablolar ve bu tablolar arasındaki ilişkilere dayalı veritabanı modeli demektir. SQL, bu tip veritabanları üzerinde işlem yapabilir.

Bir veritabanındaki verilerin, belirli kriterler doğrultusunda çağırılmasına “Sorgu” ismi verilir. SQL sistemleri, veritabanları üzerinde sorgular çalıştırarak bir takım raporlar ve çıktılar oluşturmayı sağlar. Dağınık olarak bir veritabanı altında toplanmış veri, bu sayede ihtiyaç duyduğunda derlenip toparlanır ve kullanıcıya sunulur.

SQL Neden Önemlidir?

Veritabanı satırlar ve sütunlardan oluşur. Veriler bu satır ve sütunların içine yazılır.   SQL sayesinde, bu kalabalık veri yığını içerisinde aradığınızı bulmak ve verileri kategorize etmek kolaylaşır. Alınan sorgular, birbiri ardına dizilerek karmaşık fonksiyonlarla veriler filtrelenebilir. Veritabanı içerisindeki bir veriye erişmek pratik ve kullanışlı hale gelir.

SQL güvenlik katmanlarına da sahiptir. Tablolara erişebilecek ve tablolar üzerinde işlem yapabilecek kullanıcılar belirlenebildiği için, sadece sorgu yapabilecek ya da verileri değiştirebilecek ayrı ayrı kullanıcılar oluşturulabilir.

Web sunucularda kullanılan veritabanları üzerinde SQL ile veri işlenebilir. Bu verilerin doğru ve düzenli olması, web site hızınızı da etkileyecektir. WordPress Site Optimizasyonu gibi konularda, site kodlarınızda çalışan SQL komutları üzerinde çalışma yapmak fayda sağlayacaktır. Yine web sitenizde kullandığınız veritabanına dışardan yetkisiz erişimi engellemek için .htaccess dosyasında buna uygun güvenlik satırlarını ekleyebilirsiniz.

SQL Server Kurulumu

SQL Server, sunucular içerisinde tablolar oluşturmaya ve yönetmeye olanak sağlayan programdır. Özellikli sunucularda çalışacağı gibi, tüm bilgisayarlara kurulabilir. Linux, Docker, Windows, Azure, AWS gibi farklı altyapılar üzerinde gerek yerel, gerekse Bulut Sunucularda kullanım imkanı bulunmaktadır.

Windows işletim sistemlerinde MSSQL ismi verilen “Microsoft SQL Server” kullanılabilir. Çeşitli lisanslama modelleri ve buna bağlı ücretleri olsa da  “SQL Express” ismi verilen ücretsiz ve limitli özelliklere sahip bir sürümü de bulunur. Küçük projeler ve web siteleri için SQL Express sürümü yeterli olabilir.

Windows işletim sistemlerinde MSSQL kurulumu için SQL kurulum yöneticisini indirmeli ve çalıştırmalısınız. https://www.microsoft.com/tr-tr/sql-server/sql-server-downloads adresi üzerinden SQL kurulum dosyası indirilebilir. Dosya indirildikten sonra çalıştırdığınızda karşınıza bazı seçenekler çıkacaktır.

Basic; varsayılan konfigürasyonla SQL Server kurulumu yapmanızı sağlar. Basic seçeneği bir çok proje için yeterli olabilir. Custom seçeneğinde, varsayılan ayarlar dışında  SQL sunucunun çalışacağı dizini seçebilirsiniz. C:\ dışında bir diske SQL kurmak için kullanılabilir. SQL yaklaşık olarak 7GB’a kadar alana ihtiyaç duyabilir. Kurulum yaptığınız yerde en az bu kadar alan olmasına dikkat etmeniz gerekir. Download Media; seçeneği ise kuurlum dosyasının tamamımı bilgisayarınıza kaydetmenizi sağlar. Bu sayede kurulum dosyasını, internet bağlantısı olmayan farklı bir bilgisayara taşıyarak kurulum yapabilirsiniz.

Kurulum tipini seçtikten sonra “Install” butonuna basmak yeterli olacaktır.

SQL sunucu kurduğunuzda, komutlar üzerinden SQL tablonuz üzerinde işlem yapabilirsiniz. Fakat tabloların bir görsel halinde görüntülenmesi ve SQL Server’ın yönetilebilmesi için kullanabileceğiniz uygulamalar da bulunmaktadır. MSSQL için “SQL Server Management Studio” uygulaması kullanılabilir. Bu uygulama sayesinde veritabanı içindeki tablolarını görebilir, değiştirebilir ve kullanıcı oluşturmak, kullanıcı yetkilerini düzenlemek gibi bir çok işlemi yapabilirsiniz.

SQL Server Management Studio programını indirmek için https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15 bağlantısını kullanabilirsiniz. SQL Server kurulumuna benzer bir şekilde kurulabilir. SQL Server Management Studio programı kurulduktan sonra SQL Server kurarken belirlenen “sa” kullanıcı adı ve şifresi ile SQL Server’a bağlantı kurulabilir.

SQL Veritabanı Kullanmanın Avantajları

Bir veritabanı üzerinde çalışmanın makul ve hızlı yolu SQL veritabanı kullanmaktadır. Lisansları her zaman ücretli değildir. Bir çok SQL yönetim sistemi ücretsiz olarak kurulabilir ve hemen üzerinde çalışmaya başlanabilir. Özellikle küçük projeler ve bir veritabanı yönetim sisteminin hızlıca devreye alınması gereken durumlarda süreci hızlandıracaktır.

Kullanımı ve öğrenmesi nispeten kolay

SQL Veritabanının Kullanım Alanları

SQL‘ in temel kullanım amacı verileri düzenli bir şekilde saklamak ve istenildiği anda, istenilen veriyi hızlıca geri getirmektir. Bu sebeple SQL, ölçeğine bakmaksızın hemen hemen tüm veritabanı yapılarında kullanılabilir. Daha büyük ölçekli Bankalar, Hastaneler, Devlet kurumları gibi çok sayıda verinin aynı anda işlenebildiği ortamlarda tercih edilir. Aynı zamanda web sunucularda, web sitenizde kullanmak üzere hazırladığınız tabloların işlenmesi ve  yönetilmesinde kullanılacaktır.

Veritabanı kullanılmadığı durumlarda, programlar verileri anlık olarak işler. Bazı durumlarda kısa süreli eskiye dönüş mümkün olsa da, kapsamlı şekilde geriye doğru takip etme ya da eski veriler üzerinden bir eşleştirme yapma şansı olmaz. Geriye doğru üretilen verinin takibi ve yeniden sorgulanması gereken hallerde veritabanları, veritabanlarını yönetmek için de SQL kullanılabilir.

SQL Komutları

SQL komut dilinde temel olarak Create Table, Alter Table, Drop Table, Truncate Table, Create View, Drop View, Create Index, Drop Index gibi veritanımlama komutları, Select, Update, Delete, Insert gibi veri işleme komutları bulunur. Bu SQL komutları, SQL dili içerisindeki çeşitli deyimlerle birlikte kullanıldığında hem veriyi üretmeye/düzenlemeye hem de “Query” ismi verilen sorgulara yaratmayı sağları.

Örnek olarak SQL komutları aşağıdaki gibidir;

SELECT model, markalar FROM otomobiller WHERE modelyılı = ‘2021’ sorgusu Otomobiller tablosu içindeki 2021 yılına ait model ve markaları gösterecektir.

INSERT INTO otomobiller VALUES (, ‘xxx’, , ‘2021’) komutu otomobiller tablosuna xxx marka ve 2021 model yılı içeriğiyle yeni bir satır oluşturur.

DELETE FROM otomobiller WHERE modelyili = ‘2021’ komutu otomobiller tablosunda 2021 model yılına sahip tüm satırları silecektir.