BILGI: "İsteğe bağlı özellik uygulanmadı" hata iletisi

Makale çevirileri Makale çevirileri
Makale numarası: 214459 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Özet

Saklı bir yordam parametreleri geçirmek için ActiveX Data Objects (ADO) kullandığınızda, aşağıdaki hata iletisini alabilirsiniz:
Çalışma zamanı hatası '2147217887 (80040e21)':
[Microsoft][ODBC SQL Server sürücüsü] Isteğe bağlı özellik uygulanmadı.

Daha fazla bilgi

Veri sağlayıcısı tarafından desteklenmeyen bir tür parametreleri derlemesine ADODB komut nesnenin bir parametre TÜRÜ ayarlamaya çalışırsanız bu hata oluşabilir.

Örneğin, SQL Server 7.0 kullanarak oluşturduğunuz bir saklı yordamın PUBS veritabanı:
   CREATE PROCEDURE GetEmployeeInfo (@thedate datetime, @NumEmployees int output)AS 
       SELECT @NumEmployees =  count(*) FROM EMPLOYEE WHERE hire_date < @thedate
   GO
				
türü int, belirli bir tarihten önce işe alınan çalışanlar sayısını gösteren bir çıkış parametresi bu saklı yordam döndürür. Tarih saklı yordam parametre olarak geçirilir ve çalışanların sayısını, çağıran programa bir çıkış parametresi olarak geçirilir.

Şimdi bir ADO uygulamanın saklı yordamı oluşturun. Verilen örnek, Visual Basic'de yazılmıştır.
Private Sub MySubroutine()
Dim dbConnection As ADODB.Connection
Dim dbCommand As ADODB.Command

Set dbConnection = New ADODB.Connection
Set dbCommand = New ADODB.Command

Dim DSNNAME As String
Dim USERNAME As String
Dim PASSWORD As String

DSNNAME = "Pubs"
USERNAME = "sa"
PASSWORD = ""

dbConnection.Open DSNNAME, USERNAME, PASSWORD
dbCommand.ActiveConnection = dbConnection

Dim TheDate As Date
TheDate = Now

dbCommand.CommandText = "GetEmployeeInfo"
dbCommand.CommandType = adCmdStoredProc
dbCommand.Parameters.Append dbCommand.CreateParameter("@thedate", adDBDate, adParamInput, 0, TheDate)
dbCommand.Parameters.Append dbCommand.CreateParameter("@NumEmployees", adInteger, adParamOutput, 0)
dbCommand.Execute

Dim strTheString As String
strTheString = "There are " & dbCommand.Parameters("@numemployees") & " employees who were hired before " & TheDate
MsgBox strTheString, vbOKOnly, "Demonstration"
End Sub
				
Örnek kodu çalıştırdığınızda, bu hata verir:
Çalışma zamanı hatası '2147217887 (80040e21)':
[Microsoft][ODBC SQL Server sürücüsü] Isteğe bağlı özellik uygulanmayan değil.
SQL Server adDBDate veri türünü desteklemediğinden budur. Bu sorunu gidermek için <a0></a0>, adDBTimeStamp için <a0>@ theDate</a0> parametresinin veri türü değiştirin.

Numarasını belirlemek için <a0>komut</a0> nesnesinin Parameters.Refresh yöntemi, adları, türleri ve bir saklı yordam için gereken parametreleri boyutunu Farklı Kaydet'i kullanın. Saklı yordamın doğru gereksinimlerini belirlemek için uygulamanızın geliştirme sırasında bu yöntemi çağırın sonra gerekli veri topladıktan sonra pahalı çağrısı Parameters.Refresh kaldırın.

Özellikler

Makale numarası: 214459 - Last Review: 23 Ağustos 2001 Perşembe - Gözden geçirme: 1.0
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft ActiveX Data Objects 2.0
  • Microsoft ActiveX Data Objects 2.1 Service Pack 2
  • Microsoft ActiveX Data Objects 2.5
  • Microsoft ActiveX Data Objects 2.6
  • Microsoft ActiveX Data Objects 2.7
Anahtar Kelimeler: 
kbmt kbinfo kbstoredproc KB214459 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:214459
Kullanım Dışı Bilgi Bankası İçeriği Yasal Uyarı
Bu makale, Microsoft'un artık destek sağlamadığı ürünler ile ilgili olarak yazılmıştır. Bu nedenle, bu makale "olduğu gibi" sağlanmıştır ve bundan sonra güncelleştirilmeyecektir.

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com