İçindekiler tablosu
SQL nedir ve ne için kullanılır?
SQL (Structured Query Language), veritabanları oluşturmak ve düzenlemek ve veritabanları içindeki mevcut veri kümelerini sorgulamak için kullanılabilen bir veritabanı dilidir. Veritabanı dili nispeten basit bir yapıya sahiptir ve İngilizce konuşma diline dayanmaktadır. Bir SQL sorgusu bir veritabanı sunucusuna gönderilirse, sorgudaki tüm komutlar sırayla işlenir.
Veri seçimi için SQL komutlarına örnekler
SELECT "Name" FROM "Customers" WHERE "Customer_ID"='K00001′ - Bu komut, "Customers" tablosundan "K00001" müşteri numarasına sahip müşterinin adını döndürür.
SELECT "Ad", "E-posta" FROM "Müşteriler" - Bu komut, "Customers" tablosundaki tüm müşteri veri kayıtlarının adını ve e-posta adresini döndürür. Her veri kaydı bir satır beslemesi ile ayrılır.
SQL aracılığıyla seçilen veriler her zaman eşleşen kriterlere sahip tüm veri kayıtlarını içerir. Dolayısıyla, ilk örnekte "K00001" müşteri kimliğine sahip iki müşteri varsa, SQL komutu satır beslemesiyle ayrılmış iki veri kaydı da döndürür. FileMaker'a bakın: İlgili kayıtlar için FileMaker her zaman ilgili tablodan yalnızca ilk kaydı görüntüler. Birden fazla veri kaydı bir bölüm aracılığıyla görüntülenmelidir. SQL'de, benzersiz veri kayıtları "DISTINCT" eklentisi ile seçilebilir:
SELECT DISTINCT "EMail" FROM "Addresses" WHERE "Customer_ID"='K00001′ - "Adresler" ilgili tablosunda bu değere sahip birden fazla müşteri kimliği olsa bile, müşteri kimliği "K00001" olan ilk ilgili veri kaydının e-posta adresini döndürür.
Yer tutucular SQL'de de kullanılabilir:
SELECT * FROM "Customers" WHERE "Customer_ID"='K00001′ - Müşteri kimliği "K00001" değerini içeriyorsa "Customers" tablosundaki tüm alanların değerlerini döndürür.
FileMaker ve SQL
FileMaker 12'den beri veriler "SQLAusführen ()" komutu ile seçilebilmektedir. Bu komut sonraki FileMaker sürümlerinde sürekli olarak genişletilmiş ve geliştirilmiştir. FileMaker'da SQL sorguları oluştururken dikkat edilmesi gereken birkaç özellik vardır. İlk olarak, SQL sorgusundaki her alan adı ters virgül (inç karakteri ") içine alınmalıdır. Hedef alanı bir sayı alanı olan alan değerleri çevreleyen herhangi bir karakter içermemelidir; hedef alanı bir metin alanı olan alan değerleri ters virgülle çevrelenmelidir. Ayrıca, formül düzenleyicide bir SQL sorgusu oluştururken FileMaker'a özgü kurallara uyulmalıdır. FileMaker formül düzenleyicisinde ters virgül oluşturulacaksa, ters virgülün metin dizesinin sonu olarak algılanmaması için metin dizesi içinde her zaman ters eğik çizgi ( \ ) ile öncelenmelidir.
FileMaker formül düzenleyicisinde SQL sorgusu örneği
SQL Çalıştır ("SELECT \"isim\" FROM \"müşteriler\" WHERE \"Customer_ID\"='" & $kunden_id & "'"; ""; "")
Bu örnek, basit bir SQL sorgusu ile "SQLAusführen" komutunun tamamını göstermektedir. Tüm alan adları ters virgül içine alınmıştır ve her birinin önünde metin dizesi içinde bir ters eğik çizgi vardır. Bu örnekteki müşteri kimliği bir metin dizesi olduğundan, $kunden_id değişkenindeki karşılık gelen değer ters virgül içine alınmıştır.
FileMaker'da, "SQL Çalıştır" komutu, değerleri belirtmek için bir formül düzenleyicisi sağlayan tüm işlevlerde çalıştırılabilir. Bu, komutun formül alanlarında veya hesaplanan değerlere sahip alanlarda ya da kod düzenleyicisinde "Değişken ayarla" veya "Alan değeri ayarla" komutlarıyla kullanılabileceği anlamına gelir.
FileMaker, FileMaker'da hangi SQL komutlarının kullanılabileceğini FileMaker SQL Referans Kılavuzu (PDF) özetlenmiştir.
