Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Yordam çağrılarındaki parametreler giriş, giriş/çıkış veya çıkış parametreleri olabilir. Bu, her zaman giriş parametreleri olan diğer tüm SQL deyimlerindeki parametrelerden farklıdır.
Giriş parametreleri yordama değer göndermek için kullanılır. Örneğin, Parts tablosunda PartID, Description ve Price sütunları olduğunu varsayalım. InsertPart yordamı, tablodaki her sütun için bir giriş parametresine sahip olabilir. Örneğin:
{call InsertPart(?, ?, ?)}
SQLExecDirect veya SQLExecute SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR, SQL_INVALID_HANDLE veya SQL_NO_DATA döndürene kadar sürücü giriş arabelleğinin içeriğini değiştirmemelidir. SQLExecDirect veya SQLExecute SQL_NEED_DATA veya SQL_STILL_EXECUTING döndürürken giriş arabelleğinin içeriği değiştirilmemelidir.
Giriş/çıkış parametreleri hem yordamlara değer göndermek hem de yordamlardan değer almak için kullanılır. Hem giriş hem de çıkış parametresiyle aynı parametreyi kullanmak kafa karıştırıcı olabilir ve bundan kaçınılmalıdır. Örneğin, bir prosedürün sipariş ID’sini kabul edip müşterinin ID’sini döndürdüğünü varsayın. Bu, tek bir giriş/çıkış parametresiyle tanımlanabilir:
{call GetCustID(?)}
İki parametre kullanmak daha iyi olabilir: sipariş kimliği için bir giriş parametresi ve müşteri kimliği için bir çıkış veya giriş/çıkış parametresi:
{call GetCustID(?, ?)}
Çıkış parametreleri, yordam dönüş değerini almak ve yordam bağımsız değişkenlerinden değerleri almak için kullanılır; değer döndüren yordamlar bazen işlev olarak bilinir. Örneğin, az önce bahsedilen GetCustID yordamının sırayı bulup bulamadığını gösteren bir değer döndürdüğünü varsayalım. Aşağıdaki çağrıda, ilk parametre yordam dönüş değerini almak için kullanılan bir çıkış parametresi, ikinci parametre sipariş kimliğini belirtmek için kullanılan bir giriş parametresi ve üçüncü parametre ise müşteri kimliğini almak için kullanılan bir çıkış parametresidir:
{? = call GetCustID(?, ?)}
Sürücüler, diğer SQL deyimlerindeki giriş parametrelerinden farklı olmayan yordamlardaki giriş ve giriş/çıkış parametrelerinin değerlerini işler. Deyimi yürütürken, bu parametrelere bağlı değişkenlerin değerlerini alır ve veri kaynağına gönderir.
deyimi yürütüldükten sonra sürücüler, giriş/çıkış ve çıkış parametrelerinin döndürülen değerlerini bu parametrelere bağlı değişkenlere depolar. Bu döndürülen değerlerin, yordam tarafından döndürülen tüm sonuçlar getirilene ve SQLMoreResults SQL_NO_DATA döndürene kadar ayarlanması garanti edilmemektedir. deyimi yürütülürse bir hata oluşursa, giriş/çıkış parametre arabelleğinin veya çıkış parametresi arabelleğinin içeriği tanımsız olur.
Bir uygulama, bir yordamın dönüş değerine sahip olup olmadığını belirlemek için SQLProcedure'yi çağırır. Her yordam parametresinin türünü (dönüş değeri, giriş, giriş/çıkış veya çıkış) belirlemek için SQLProcedureColumns'ı çağırır.