
Aşağıda gösterilen karşılaştırma tablosunun yardımıyla SQL ve PL / SQL arasındaki bazı farklılıkları tartışalım.
Karşılaştırma Tablosu
Karşılaştırma için temel | SQL | PL / SQL |
---|---|---|
Temel | SQL'de bir defada tek bir sorgu veya komut yürütebilirsiniz. | PL / SQL'de bir defada bir kod bloğu çalıştırabilirsiniz. |
Tam form | Yapılandırılmış sorgu dili | Usul Dili, SQL'in genişletilmesi. |
amaç | Görüntülenecek veri kaynağı gibidir. | SQL tarafından elde edilen verileri görüntüleyen bir uygulama oluşturan dildir. |
yazar | SQL'de DDL, DML deyimlerini kullanarak sorgu yazabilir ve komut yazabilirsiniz. | PL / SQL'de prosedürler, işlevler, paketler veya değişkenler vb. İçeren bir kod bloğu yazabilirsiniz. |
kullanım | SQL kullanarak, veritabanındaki verileri alabilir, değiştirebilir, ekleyebilir, silebilir veya işleyebilirsiniz. | PL / SQL kullanarak, SQL'den elde edilen bilgileri uygun bir biçimde gösteren uygulamaları veya sunucu sayfalarını oluşturabilirsiniz. |
Göm | SQL deyimini PL / SQL içine gömebilirsiniz. | PL / SQL'i SQL'e gömemezsiniz |
SQL'un tanımı
SQL ( Structured Query Language ), 1970 yılında IBM tarafından geliştirilen yerleşik bir ilişkisel veritabanı dilidir. Veri tanım dili olan DDL ile veri tabanındaki ilişki kümesini (tabloları) tanımlar. DDL, her ilişkinin şemasını oluşturmak için kullanılır ve bütünlüğün kısıtlarını, güvenliği ve her ilişkinin yetkilendirmesini korur.
SQL'in diğer kısmı DML yani Veri İşleme Dili'dir . DML, kullanıcının veritabanındaki verilere erişmesini veya üzerinde işlem yapmasını sağlar. DML, temelde iki tür Prosedürel DML ve Declarative veya prosedürel olmayan DML'dir . Prosedürel DML ifadeleri, hangi verilerin gerekli olduğunu ve bu verilerin nasıl alınacağını belirtir. Diğer taraftan, Declarative DML deyimi yalnızca hangi verilere ihtiyaç duyulduğunu belirtir. SQl, Declarative DML'leri kullanır.
SQL, C / C ++, Java, Perl, Python, PHP, vb. Birçok dilin sözdizimine gömülebilir. Veri odaklı bir bildirim dilidir.
PL / SQL'un tanımı
PL / SQL, 90'lı yılların başında Oracle Corporation tarafından geliştirilen prosedürel bir ilişkisel veritabanı dilidir. PL / SQL, Oracle tarafından diğer iki dilde SQL ve Java ile birlikte kullanılan dildir. Bu bir SQL uzantısıdır ve sözdizimi içindeki SQL ifadeleriyle gömülür.
PL / SQL, bir anda bir kod bloğunun performansını artıran bir zamanda yürütülmesine izin verir. Kod bloğu prosedürlerden, fonksiyonlardan, döngülerden, değişken paketlerinden ve tetikleyicilerden oluşur. PL / SQL, web uygulamaları ve sunucu sayfaları oluşturmak için tasarlanmıştır. PL / SQL, kapsülleme, veri gizleme, istisna yönetimi ve nesne yönelimli veri tipi gibi özellikleri engeller.
SQL ve PL / SQL Arasındaki Temel Farklılıklar
- İki dil arasındaki temel fark, SQL'in bir defada tek bir sorguyu yürütmesidir, Pl / SQL bir kerede kod bloğunu çalıştırır.
- SQL, Yapısal bir Sorgu Dili iken PL / SQL bir Prosedür Dili / Yapısal Sorgu Dilidir.
- SQL, PL / SQL kullanılarak oluşturulan uygulama tarafından görüntülenecek verileri almak için bir kaynak görevi görür.
- SQL sorguları ve komutları DDL (Veri Tanımlama Dili), DML (Veri Manipülasyon Dili) kullanılarak yazılmıştır. Bununla birlikte, PL / SQL kullanarak kendi sözdiziminde prosedürleri, fonksiyonları, tetikleyicileri, paketleri, değişkenleri olan programlama bloğunu yazabilirsiniz.
- SQL sorguları veri tabanından veri almak için kullanılır; Ayrıca veritabanındaki verileri ekleyebilir, silebilir veya değiştirebilirsiniz. Diğer taraftan, PL / SQL, SQL tarafından alınan bilgileri görüntüleyebilecek uygulamalar oluşturmak için kullanılır.
- SQL sorgularını PL / SQL sözdizimine gömebilirsiniz. Bununla birlikte, bunun tersi mümkün değildir.
Sonuç:
SQL bir bildirim dilidir, yalnızca hangi verilere ihtiyaç duyulduğunu belirtir. Ancak PL / SQL bir prosedür dilidir, hem hangi verilere ihtiyaç duyulduğunu hem de nasıl alınabileceğini belirtir.