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.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analytics Platform System (PDW)
Bir SQL ifadesindeki her parametre belirtecisi, uygulamadaki bir değişkene bağlanmalı veya bağlanmalıdır; böylece ifade yürütülebilir. Bu, SQLBindParameter fonksiyonu çağrılarak yapılır. SQLBindParameter program değişkenini (adres, C veri tipi vb.) sürücüye açıklar. Ayrıca, parametre işaretleyicisini sıralı değerini belirterek tanımlar ve ardından temsil ettiği SQL nesnesinin özelliklerini (SQL veri türü, hassasiyet vb.) tanımlar.
Parametre belirteçleri, bir ime yürütülmeden önce herhangi bir zamanda sınırlanabilir veya geri dönüşebilir. Bir parametre bağlaması, aşağıdakilerden biri gerçekleşene kadar geçerlidir:
SQLFreeStmt'ye yapılan bir çağrı, Option parametresi SQL_RESET_PARAMS olarak ayarlandığında, ifade tutacağına bağlı tüm parametreleri serbest bırakır.
ParameterNumber sınırlı bir parametre işaretçisinin ordinalına ayarlanmış SQLBindParameter çağrısı önceki bağlamayı otomatik olarak serbest bırakır.
Bir uygulama ayrıca parametreleri program değişkenleri dizilerine bağlayarak bir SQL ifadesini toplu olarak işleyebilir. İki tür dizi bağlama vardır:
Sütun bazında bağlama, her bireysel parametrenin kendi değişken dizisine bağlı olması durumunda yapılır.
Sütun bazında bağlama, Attribute SQL_ATTR_PARAM_BIND_TYPE ve ValuePtr SQL_PARAM_BIND_BY_COLUMN olarak ayarlanmış SQLSetStmtAttr çağrılarak belirlenir.
Satır bazında bağlama, SQL ifadesindeki tüm parametrelerin, parametreler için bireysel değişkenleri içeren bir yapı dizisine birim olarak bağlı olması durumunda yapılır.
Satır bazında bağlama, SQLSetStmtAttr çağrılıp, Attribute SQL_ATTR_PARAM_BIND_TYPE ve ValuePtr programın değişkenlerini barındıran yapının boyutuna ayarlanarak belirlenir.
SQL Server Native Client ODBC sürücüsü sunucuya karakter veya ikili dize parametreleri gönderdiğinde, değerleri SQLBindParameterColumnSize parametresinde belirtilen uzunluğa doldurur. Bir ODBC 2.x uygulaması ColumnSize için 0 belirtirse, sürücü parametre değerini veri tipinin hassasiyetine göre taşır. SQL Server sunucularına bağlandığında hassasiyet 8000, önceki SQL Server sürümlerine bağlandığında 255 derecedir. ColumnSize , varyant sütunlar için bayt cinsindendir.
SQL Server, depolanan prosedür parametreleri için isimler tanımlamayı destekler. ODBC 3.5 ayrıca SQL Server depolanmış prosedürleri çağrılırken kullanılan adlandırılmış parametreleri destekledi. Bu destek şu amaçlarla kullanılabilir:
Bir depolanmış prosedürü çağırın ve depolanan prosedür için tanımlanan parametrelerin bir alt kümesi için değerler verin.
Uygulamada parametreleri, saklanan prosedür oluşturulduğunda belirtilen sıradan farklı bir sırayla belirtin.
Adlandırılmış parametreler yalnızca Transact-SQL EXECUTE ifadesi veya ODBC CALL kaçış dizisi kullanılarak saklanan bir prosedür çalıştırıldığında desteklenir.
Eğer SQL_DESC_NAME bir saklanan prosedür parametresi için ayarlandıysa, sorgudaki tüm depolanmış prosedür parametreleri de SQL_DESC_NAME olarak ayarlanmalıdır. Eğer literaller saklanan işlem çağrılarında kullanılırsa, parametrelerin SQL_DESC_NAME ayarlandığı durumlarda, literaller 'name=value' formatını kullanmalı, burada isim saklanan prosedür parametre adıdır (örneğin, @p1). Daha fazla bilgi için Isme göre Bağlama Parametreleri (Adlandırılmış Parametreler) bölümüne bakınız.