29 SQL lehçeleri
SQL bir standartlar kümesi olsa da, farklı veritabanı motorları ve şirketleri, bu standartları farklı şekilde uygulayabilir.
Bu farklılıklara bir örnek temel komut SELECT’tir. Eğer select yalnızca FROM ile veya FROM olmadan çalışıyorsa.
modern-sql web sayfası örneği select from olmadan:
Baştan şunu netleştirelim: from olmadan select, standart SQL’e uygun değildir. Nokta.
Ancak select without from SQL Server ve SQLite’da çalışır. Aşağıdaki örnek sorgulara bakalım
sqlite
SELECT DATE('now');
Sql Server
SELECT GETDATE()
Ama oracle’da aynı bilgiyi almak için dual adlı kukla tabloyu kullanmanız gerekir. Oracle veritabanında from olmadan select çalıştıramazsınız.
Oracle
SELECT CURRENT_DATE FROM dual;
Ayrıca SQL standardına prosedürel dil öğeleri gibi uzantılar da ekleyebilirler.
29.1 SQL lehçesi sqlite
Resmi bir isim verilmesede .schema, .table, .explain gibi komutlar, sqlite veri tabanını yönetmemize yardımcı olur ve bir lehçe sayılabilir.
29.2 SQL Lehçesi Transact-SQL
Microsoft ve Sybase’ın SQL standartı üstüne ekledikleri yordamsal (procedural) eklentiler
SQL standart’ına Microsoft ve Sybase’ın eklentileri
SQL server ve Azure SQL veri tabanları için sorgu dili
T-SQL, Microsoft SQL ürün ve hizmetlerini kullanmanın merkezinde yer alır. SQL Server veritabanıyla iletişim kuran tüm araçlar ve uygulamalar bunu T-SQL komutları göndererek yapar.
29.3 SQL Lehçesi PL/SQL
PL/SQL, Oracle tarafından SQL diline yapılan prosedürel uzantılardır. Aşağıdaki tanımlarına bakın:
PL/SQL, sözdiziminde SQL ifadelerini kapsayacak şekilde özel olarak tasarlanmış bir prosedürel dildir. PL/SQL program birimleri Oracle Veritabanı sunucusu tarafından derlenir ve veritabanının içinde saklanır. Ve çalışma zamanında, hem PL/SQL hem de SQL aynı sunucu işlemi içinde çalışarak optimum verimlilik sağlar. PL/SQL, Oracle Veritabanının sağlamlığını, güvenliğini ve taşınabilirliğini otomatik olarak devralır.