Aracılığıyla paylaş


Komut parametreleri

Parametreler komut metin soru işareti karakteri ile işaretlenir.Örneğin, aşağıdaki sql deyim tek bir giriş parametresi için işaretlenir:

{call SalesByCategory('Produce', ?)}

Ağ trafiğini azaltarak performansı için SQL Server yerel istemci ole db sağlayıcı otomatik olarak türetmek parametre bilgilerini sürece ICommandWithParameters::GetParameterInfo veya ICommandPrepare::Prepare bir komutu yürütmeden önce çağrılır.Bunun anlamı SQL Server yerel istemci ole db sağlayıcı otomatik olarak yapar:

  • Belirtilen veri türünün doğruluğunu doğrulamak ICommandWithParameters::SetParameterInfo.

  • Erişimci bağlama bilgileri doğru belirtilen dbtype eşlemesinden SQL Server veri türü parametresi.

Uygulamalar alacak olası hataları veya duyarlılık kaybı bu yöntemlerden herhangi biri ile bunlar ile uyumlu olmayan veri türleri belirtirseniz, SQL Server veri türü parametresi.

Bu durum emin olmak için uygulama gerekir:

  • Emin pwszDataSourceType eşleşen SQL Server , sabit kodlama parametresinin veri türü ICommandWithParameters::SetParameterInfo.

  • Parametreye bağlı dbtype değeri aynı türde olduğundan emin olun SQL Server , parametre için veri türü sabit kodlama bir erişimci.

  • Kod çağırmak için uygulama ICommandWithParameters::GetParameterInfo sağlayıcı elde edebilirsiniz böylece SQL Server parametre veri türleri dinamik olarak.Bu turda sunucu için ek bir ağ neden olduğunu unutmayın.

Not

Arama sağlayıcı desteklemiyor ICommandWithParameters::GetParameterInfo herhangi SQL Server update veya delete deyim içeren bir from yan tümce tümce tümce; herhangi SQL deyim ; parametreleri içeren bir alt sorgu türüne göre bir karşılaştırma her iki ifade de parametre imleyicileri gibi içeren veya yüklemi quantified sql deyimleri için; veya bir işlev için bir parametre olduğu parametrelerden sorgular.sql deyimlerinin bir toplu işleme sırasında sağlayıcı ayrıca arama desteklemez ICommandWithParameters::GetParameterInfo sonra toplu iş içinde ilk deyim ifadelerine parametresi işaretçileri için.Yorumlar (/ * * /) içinde verilir Transact-SQL komut.

The SQL Server Native Client OLE DB provider supports input parameters in SQL statement commands.Yordam çağrısı komutları, SQL Server yerel istemci ole db sağlayıcı destekler giriş, çıkış ve giriş/çıkış parametreleri.Uygulama tarafından yürütülmesine (yalnızca olduğunda döndürülen hiçbir satır kümeleri) veya tüm satır kümeleri döndürdü tükendi uygulamaya çıkış parametresi değerleri döndürülür.Verilen değerler geçerli olduğundan emin olmak için kullanın IMultipleResults satır kümesi tüketim zorlamak için.

Saklı yordam parametreleri adlarını DBPARAMBINDINFO yapısında belirtilmesi gerekmez.null değerini kullanın pwszName belirtmek için üye SQL Server yerel istemci ole db sağlayıcı parametre adı yoksay ve yalnızca belirtilen sıra kullanmak gerekir rgParamOrdinals üyesi ICommandWithParameters::SetParameterInfo.Adlandırılmış ve adlandırılmamış parametreleri komut metin içeriyorsa, tüm adlandırılmamış parametreleri önce adlandırılmış parametreleri belirtilmelidir.

Bir saklı yordam parametre adı belirtilirse, SQL Server yerel istemci ole db sağlayıcı adı geçerli olduğundan emin olmak üzere denetler.The SQL Server Native Client OLE DB provider returns an error when it receives an erroneous parameter name from the consumer.

Not

Desteğini göstermek için SQL Server xml ve kullanıcı tanımlı türler (udt) SQL Server yerel istemci ole db sağlayıcı uygular yeni bir ISSCommandWithParameters arabirim.

Ayrıca bkz.

Kavramlar