Ana içeriğe geç

DB-2-API: Stored Procedure Çağırma

Apinizer DB to API Tasarımcısı ile Oracle Veritabanında Procedure Çağrımı​

Not

Cursor döndüren OUT parametreleri için parametre tipi olarak REF_CURSOR seçilebilir; Oracle'da bu parametre OracleTypes.CURSOR olarak kaydedilir ve dönen kayıtlar satırlar olarak yanıta eklenir.

1. DB-2-API Oluşturma​

API Creator → DB-2-API ile yeni bir API tanımlanır.

DB-2-API Oluşturma

DB-2-API'nin ad ve açıklama alanları doldurulup Devam Et butonuna tıklanır. Gözden geçir adımında bilgiler kontrol edilip DB-2-API Oluştur butonuna tıklanır.

DB-2-API ayarlarını içeren görsele aşağıda yer verilmiştir:

DB-2-API Ayarları

2. Metot Oluşturma​

Ekle (Add) butonuna tıklayarak method/endpoint oluşturma paneli açılır.

Endpoint Ekleme

2.1 Sadece IN Parametresi Kullanan Prosedür Çağrımı​

Demo olarak kullanılan Oracle veritabanı prosedürü aşağıdaki örnekte görülmektedir:

create or replace PROCEDURE sampleProcedureWithInParams (
pId IN NUMBER,
pName IN VARCHAR2,
pDesc IN VARCHAR2,
pCost IN NUMBER,
pPrice IN NUMBER,
pCat IN NUMBER
) IS
begin
INSERT INTO "TEST"."PRODUCTS" (
PRODUCT_ID,
PRODUCT_NAME,
DESCRIPTION,
STANDARD_COST,
LIST_PRICE,
CATEGORY_ID
) VALUES (pId, pName, pDesc, pCost, pPrice, pCat);
commit;
end;

Metot oluşturma ayarlarını içeren görsele aşağıda yer verilmiştir:

Metot Oluşturma - IN Parametreleri

2.2 IN ve OUT Parametresi Alan Prosedür Çağrımı​

A. Demo olarak kullanılan Oracle veritabanı prosedürü aşağıda görülmektedir:​

create or replace PROCEDURE sampleProcedureWithInOutParams (
pId IN NUMBER,
pName OUT VARCHAR2
) IS
begin
select PRODUCT_NAME into pName
from PRODUCTS
where PRODUCT_ID = pId;
commit;
end;

Metot oluşturma ayarlarını içeren görsele aşağıda yer verilmiştir:

Metot Oluşturma - IN/OUT Parametreleri

B. Demo olarak kullanılan Oracle veritabanı prosedürü aşağıda görülmektedir:​

create or replace PROCEDURE sampleProcedureWithInOutCursorParams (
cat_id IN NUMBER,
total_cost OUT NUMBER,
cursoroutparam OUT SYS_REFCURSOR
) IS
begin
SELECT sum (standard_cost) INTO total_cost
FROM PRODUCTS
where category_id = cat_id;

OPEN cursoroutparam FOR
SELECT * FROM PRODUCTS
where category_id = cat_id;
end;

Metot oluşturma ayarlarını içeren görsele aşağıda yer verilmiştir:

Metot Oluşturma - IN/OUT Cursor Parametreleri

3. API Tanım Belgelerini Görüntüleme​

Mesaj İçeriğini Göster (Show Sample Message Body) linkine tıklayarak mesaj içeriği görüntülenebilir.

Show Sample Message Body

4. API Proxy Oluşturma​

DB-2-API ekranından API Proxy Oluştur (Create API Proxy) butonuna tıklanarak anında API Proxy oluşturulabilir.

API Proxy Oluştur

API Proxy'i oluştururken aşağıdaki görselde bulunan alanlar doldurularak Oluştur ve yükle butonuna tıklanır.

API Proxy Oluşturma Formu

4.1 API Proxy'yi Canlıya Alma​

API Proxy, tanımı yapılmış ortam (environment) üzerine hızlı bir şekilde yüklenip , istemcilerin tüketimine açılabilir.

Bu işlemin yönetimi API Proxy ekranındaki Yükle (Deploy) butonuyla açılan diyalog üzerinden gerçekleştirilebilir.

Deploy Dialog

5. Test Etme​

5.1 IN Procedure'ünün Test Edilmesi​

İlgili metodun beklediği parametreler isteğe eklenip çalıştırıldığında aşağıdaki başarılı yanıt dönmektedir.

IN Procedure Test Sonucu

5.2 OUT Cursor Procedure'ünün Test Edilmesi​

İlgili metodun beklediği parametreler isteğe eklenip çalıştırıldığında aşağıdaki başarılı yanıt dönmektedir.

OUT Cursor Procedure Test Sonucu

5.3 OUT Procedure Test Edilmesi​

İlgili metodun beklediği parametreler isteğe eklenip çalıştırıldığında aşağıdaki başarılı yanıt dönmektedir.

OUT Procedure Test Sonucu