Veritabanı olarak Microsoft SQL Server kullanacaksınız. Bu derste ele alınan kavram, çoğu İlişkisel Veritabanı Yönetim Sistemi (RDBMS) için aynıdır; ancak söz dizimleri farklıdır. Burada kullanılan fikir, tüm veritabanları için uygundur.
Saklı Yordam (Stored Procedure), İlişkisel Veritabanı Yönetim Sistemi (RDBMS) içinde yer alan SQL deyimleri bloğudur; genellikle programcı, Veritabanı Yöneticisi (DBA) veya Veri Analisti tarafından yazılır, kaydedilir ve birden çok programda yeniden kullanılır. Çeşitli RDBMS'lere bağlı olarak farklı türleri de olabilir. Bununla birlikte, herhangi bir RDBMS'de bulunan iki en önemli Saklı Yordam türü şunlardır:
Kullanıcı tanımlı Saklı Yordam
Sistem Saklı Yordamı
Saklı Yordam, depolanan veya önbelleğe alınan ve ardından yeniden kullanılan, önceden derlenmiş koddur. Yeniden kullanım için önbelleğe alınmış koda sahip olabilir, bu da bakımı çok daha kolay hale getirir; örneğin, birden fazla kez değiştirilmesi gerekmez ve bu durum güvenliğin korunmasına yardımcı olabilir.
Tablo Oluşturma
Aşağıdaki gibi table_Employees adlı bir tablo oluşturacaksınız.
CREATE TABLE table_Employees
(
EmployeeId INT PRIMARY KEY NOT NULL,
EmployeeFirstName VARCHAR(25) NOT NULL,
EmployeeLastName VARCHAR(25) NOT NULL,
EmployeeGender VARCHAR(25) NOT NULL,
EmployeeDepartmentID INT
)Altyapı:
Tablo, belirli bir şirketteki çalışanlara ilişkin bilgileri içerir ve aşağıdaki sütunlardan oluşur:
EmployeeId: Birincil anahtardır; benzersizdir ve tamsayı veri tipindedir; değerin otomatik artması sağlanır.
EmployeeFirstName: Çalışanın adıdır; karakter veri tipindedir ve boş bırakılamaz.
EmployeeLast Name: Çalışanın soyadıdır; karakter veri tipindedir ve boş bırakılamaz.
EmployeeGender: Çalışanın cinsiyetini gösterir ve karakter tipindedir.
EmployeeDepartmentId: Çalışanın bölüm kimliğidir ve tamsayı veri tipindedir.
Tabloya değer eklemek için bir sorgu yazabilirsiniz. Tabloya değer ekleme sorgusu şu şekildedir:
Değerleri tabloya ekledikten sonra, table_Employees oluşturulmuş olur.
Kullanıcı Tanımlı Saklı Yordam Oluşturma
Saklı Yordam, bir sorguyu bir kez yazmanıza ve o sorgunun bir ada sahip olarak kaydedilip gerektiğinde birden fazla kez çalıştırılmasına olanak tanır. Sorguları çalıştırdığınızda, Programmabilty->Stored Procedure şeklinde bir klasör oluşur ve içinde dbo.uprocGetEmployees adlı bir dosya bulunur.
Bir Saklı Yordam oluşturmanın söz dizimi şöyledir:
Örnekte, aşağıdaki klasörde bir değişiklik olduğu gösterilmektedir. EMPLOYEE->Programmability->Stored Procedures->dbo.uprocGetEmployessGenderAndDepartment
Buradaki kavram, Python, Java vb. genel programlama dillerindeki fonksiyonlara oldukça benzerdir. Yukarıdaki programda, "uprocGetEmployeesGenderAndDepartment" adlı bir fonksiyon veya yordam vardır; @EmployeeGender ve @EmployeeDepartmentId adlı parametreleri bulunur ve bu parametreler, yordamımıza gerekli değeri geçirerek "çağrılır". Bu iki yoldan biriyle yapılabilir; aşağıda açıklanmıştır.
Bu programdaki parametreler @EmployeeGender ve @EmployeeDepartmentId'dir; parametreye değer geçirilerek "çağrılır".
Değer, iki yoldan biriyle belirtilebilir. Çoklu parametreli Saklı Yordamı çalıştırmak için bunlardan herhangi birini kullanabilirsiniz.
Sorguda parametre adlarını belirterek ve gerekli değerleri geçirerek:
Saklı Yordamın parametreleriyle eşleşen konuma göre ve gerekli değeri parametreye geçirerek:
Saklı Yordamı Değiştirme
Saklı Yordamı ALTER PROCEDURE komutunu kullanarak da değiştirebilirsiniz.
ALTERPROCEDURE uprocGetEmployeesGenderAndDepartment
@EmployeeGender nvarchar(25),
@EmployeeDepartmentId int
BEGINSELECT EmployeeFirstName,EmployeeGender,EmployeeDepartmentId FROM table_Employees WHERE
EmployeeGender = @EmployeeGender AND EmployeeDepartmentId = @EmployeeDepartmentId
ENDAltyapı:
Saklı Yordamı Silme
Saklı Yordamlar aşağıdaki komutlarla hızlıca silinebilir:
DROP PROC <> DROP PROCEDURE <>
Şifreleme Yoluyla Güvenlik Ekleme
Aşağıdaki resimde solda görülen kilit simgesi, Saklı Yordamın şifrelendiğini ve yalnızca yetkili kişilerin erişebileceğini gösterir.
Sonuç
Az önce Kullanıcı Saklı Yordamlarının temellerini öğrendiniz; ele alınan konular, kavramsal olarak herhangi bir RDBMS ile benzerdir. Daha fazlasını öğrenmek için DataCamp'te Intermediate SQL Server kursuna katılabilirsiniz. Ayrıca, aşağıdaki Stored Procedures eğitimi öğreniminize katkı sağlayacaktır.
Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Veritabanı olarak Microsoft SQL Server kullanacaksınız. Bu derste ele alınan kavram, çoğu İlişkisel Veritabanı Yönetim Sistemi (RDBMS) için aynıdır; ancak söz dizimleri farklıdır. Burada kullanılan fikir, tüm veritabanları için uygundur.
Saklı Yordam (Stored Procedure), İlişkisel Veritabanı Yönetim Sistemi (RDBMS) içinde yer alan SQL deyimleri bloğudur; genellikle programcı, Veritabanı Yöneticisi (DBA) veya Veri Analisti tarafından yazılır, kaydedilir ve birden çok programda yeniden kullanılır. Çeşitli RDBMS'lere bağlı olarak farklı türleri de olabilir. Bununla birlikte, herhangi bir RDBMS'de bulunan iki en önemli Saklı Yordam türü şunlardır:
Saklı Yordam, depolanan veya önbelleğe alınan ve ardından yeniden kullanılan, önceden derlenmiş koddur. Yeniden kullanım için önbelleğe alınmış koda sahip olabilir, bu da bakımı çok daha kolay hale getirir; örneğin, birden fazla kez değiştirilmesi gerekmez ve bu durum güvenliğin korunmasına yardımcı olabilir.
Tablo Oluşturma
Aşağıdaki gibi
table_Employeesadlı bir tablo oluşturacaksınız.Tablo, belirli bir şirketteki çalışanlara ilişkin bilgileri içerir ve aşağıdaki sütunlardan oluşur:
Tabloya değer eklemek için bir sorgu yazabilirsiniz. Tabloya değer ekleme sorgusu şu şekildedir:
Değerleri tabloya ekledikten sonra, table_Employees oluşturulmuş olur.
Kullanıcı Tanımlı Saklı Yordam Oluşturma
Saklı Yordam, bir sorguyu bir kez yazmanıza ve o sorgunun bir ada sahip olarak kaydedilip gerektiğinde birden fazla kez çalıştırılmasına olanak tanır. Sorguları çalıştırdığınızda, Programmabilty->Stored Procedure şeklinde bir klasör oluşur ve içinde dbo.uprocGetEmployees adlı bir dosya bulunur.
Bir Saklı Yordam oluşturmanın söz dizimi şöyledir:
Aşağıdaki SQL deyimlerini kullanarak bir Saklı Yordam oluşturabilirsiniz.
Ayrıca, "sp_." dışındaki bir adlandırma kuralıyla Saklı Yordam oluşturmanız gerekir. Örnekteki Saklı Yordamın adı:
uprocGetEmployees.Saklı Yordamı Çalıştırma
Bir Saklı Yordamı çalıştırmak için üç yaklaşımdan birini kullanabilir ve şu şekilde çalıştırabilirsiniz.
Yukarıdaki programda, uprocGetEmployees yordam adını kullanabilir ve sorguyu çalıştırmak için seçebilirsiniz.
Parametreli Saklı Yordam
Saklı Yordam tekli veya çoklu parametre kabul edebilir. Önce çoklu parametreleri anlarsanız, tekli parametreleri anlamak da kolay olacaktır.
Çoklu parametreli bir Saklı Yordam oluşturmanın söz dizimi şöyledir:
Örnekte, aşağıdaki klasörde bir değişiklik olduğu gösterilmektedir.
EMPLOYEE->Programmability->Stored Procedures->dbo.uprocGetEmployessGenderAndDepartment
Buradaki kavram, Python, Java vb. genel programlama dillerindeki fonksiyonlara oldukça benzerdir. Yukarıdaki programda, "uprocGetEmployeesGenderAndDepartment" adlı bir fonksiyon veya yordam vardır; @EmployeeGender ve @EmployeeDepartmentId adlı parametreleri bulunur ve bu parametreler, yordamımıza gerekli değeri geçirerek "çağrılır". Bu iki yoldan biriyle yapılabilir; aşağıda açıklanmıştır.
Bu programdaki parametreler @EmployeeGender ve @EmployeeDepartmentId'dir; parametreye değer geçirilerek "çağrılır".
Değer, iki yoldan biriyle belirtilebilir. Çoklu parametreli Saklı Yordamı çalıştırmak için bunlardan herhangi birini kullanabilirsiniz.
Saklı Yordamı Değiştirme
Saklı Yordamı ALTER PROCEDURE komutunu kullanarak da değiştirebilirsiniz.
Saklı Yordamı Silme
Saklı Yordamlar aşağıdaki komutlarla hızlıca silinebilir:
DROP PROC <> DROP PROCEDURE <>
Şifreleme Yoluyla Güvenlik Ekleme
Aşağıdaki resimde solda görülen kilit simgesi, Saklı Yordamın şifrelendiğini ve yalnızca yetkili kişilerin erişebileceğini gösterir.
Sonuç
Az önce Kullanıcı Saklı Yordamlarının temellerini öğrendiniz; ele alınan konular, kavramsal olarak herhangi bir RDBMS ile benzerdir. Daha fazlasını öğrenmek için DataCamp'te Intermediate SQL Server kursuna katılabilirsiniz. Ayrıca, aşağıdaki Stored Procedures eğitimi öğreniminize katkı sağlayacaktır.