Aracılığıyla paylaş


SQL Server Yerel İstemcisinde (OLE DB) ISSCommandWithParameters::GetParameterProperties

Şunlar için geçerlidir: Sql ServerAzure SQL VeritabanıAzure Synapse AnalyticsAnalytics Platform Sistemi (PDW)Azure SQL Veritabanı

Önemli

SQL Server Native Client (genellikle kısaltılmış SNAC) SQL Server 2022 (16.x) ve SQL Server Management Studio 19'dan (SSMS) kaldırılmıştır. Hem SQL Server Yerel İstemci OLE DB sağlayıcısı (SQLNCLI veya SQLNCLI11) hem de SQL Server için eski Microsoft OLE DB Sağlayıcısı (SQLOLEDB) yeni geliştirme için önerilmez. İleride SQL Server için yeni Microsoft OLE DB Sürücüsüne (MSOLEDBSQL) geçin.

Her UDT veya XML parametresi için bir SSPARAMPROPS özellik kümesi olan SSPARAMPROPS özellik kümesi yapılarından oluşan bir dizi döndürür.

Sözdizimi

HRESULT GetParameterProperties(  
      DB_UPARAMS *pcParams,  
      SSPARAMPROPS **prgParamProperties);  

Bağımsız değişken

pcParams[out][in]
prgParamPropertiesiçinde döndürülen SSPARAMPROPS yapılarının sayısını içeren bir bellek işaretçisi.

prgParamProperties[out]
Bir dizi SSPARAMPROPS yapısının döndürüldiği belleğe yönelik bir işaretçi. Sağlayıcı yapılar için bellek ayırır ve adresi bu belleğe döndürür; tüketici artık yapılara ihtiyaç duymuyorsa bu belleği IMalloc::Free ile serbest bırakır. prgParamPropertiesiçin IMalloc::Free çağırmadan önce, değişkenin bir başvuru türü (BSTR gibi) içerdiği durumlarda bellek sızıntısını önlemek için tüketicinin her DBPROP yapısının vValue özelliği için VariantClear da çağırması gerekir. pcParams çıkışta sıfırsa veya DB_E_ERRORSOCCURRED dışında bir hata oluşursa, sağlayıcı herhangi bir bellek ayırmaz ve prgParamProperties çıkışta null işaretçi olmasını sağlar.

Dönüş Kodu Değerleri

GetParameterProperties yöntemi, DB_S_ERRORSOCCURRED ve DB_E_ERRORSOCCURRED oluşturulamaması dışında ICommandProperties::GetProperties yöntemi çekirdek OLE DB ile aynı hata kodlarını döndürür.

Açıklamalar

ISSCommandWithParameters::GetParameterProperties, GetParameterInfoile tutarlı bir şekilde davranır. ISSCommandWithParameters::SetParameterProperties veya SetParameterInfo çağrılmadıysa veya sıfıra eşit cParams ile çağrıldıysa, getParameterInfo parametre bilgilerini türetir ve bunu döndürür. ISSCommandWithParameters::SetParameterProperties veya SetParameterInfo en az bir parametre için çağrıldıysa, ISSCommandWithParameters::GetParameterProperties yalnızca ISSCommandWithParameters::SetParameterProperties çağrılan parametrelerin özelliklerini döndürür. ISSCommandWithParameters::SetParameterProperties ISSCommandWithParameters::GetParameterProperties veya getParameterInfosonra çağrılırsa, sonraki , ISSCommandWithParameters::GetParameterProperties çağrıları, ISSCommandWithParameters::SetParameterProperties çağrılan parametreler için geçersiz kılınan değerleri döndürür.

SSPARAMPROPS yapısı aşağıdaki gibi tanımlanır:

struct SSPARAMPROPS {
    DBORDINAL iOrdinal;
    ULONG cPropertySets;
    DBPROPSET *rgPropertySets;
};
Üye Açıklama
iOrdinal Geçirilen parametrenin sıralı değeri.
cPropertySets rgPropertySetsiçindeki DBPROPSET yapılarının sayısı.
rgPropertySets DBPROPSET yapılarından oluşan bir dizi döndürülecek belleğe yönelik bir işaretçi.

Ayrıca Bkz.

ISSCommandWithParameters (OLE DB)