Makale numarası: 181199 - Son Gözden Geçirme: 14 Mart 2005 Pazartesi - Gözden geçirme: 1.2

ADO parametreleri nasıl BIND olmadığı nasıl belirlenir

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.
Hepsini aç | Hepsini kapa

Özet

Bazen ADO saklı yordam parametreleri nasıl bağlanacaktır belirlemek için tercih edilir. Bu makalede, seçilen bir saklı yordam parametre adı, türü, boyutu ve yönü döndüren bir Visual Basic uygulaması sağlar.

Daha fazla bilgi

Aşağıdaki proje başlangıç formda, liste kutusu ve bir komut düğmesi vardır. Tüm sonuçları, hata ayıklama penceresinde görüntülenir. Kod'ın Microsoft SQL Server veya Oracle veritabanları için sağlanan unutmayın. Açıklama ve bağlantı dizesini değiştirin veya SQL dizesini oluşturma satırları uncomment gerekir.

  1. Yeni bir proje için Visual Basic'te açın. Varsayılan olarak, Form1 oluşturulur.
  2. Bir liste kutusu ve yeni bir form üzerindeki bir komut düğmesi denetimi yerleştirin.
  3. Proje menüsünde başvuru'ı seçin ve Microsoft ActiveX Data Objects (ingilizce)'ı seçin.
  4. Form1 genel Tanımlamalar bölümüne aşağıdaki kodu yerleştirin:
       Dim Conn As New ADODB.Connection
       Dim Rs As ADODB.Recordset
    
       Private Sub Form_Load()
          Command1.Caption = "Start"
       End Sub
    
       Private Sub Command1_Click()
          Dim strSQL As String
          Form1.MousePointer = vbHourglass
    
          ' Adjust connection parameters for your server.
          'SQL Server Connection
          Conn.Open "MySQLServer", "sa", ""  'SQL Server Connection
          StrSQL = "SELECT Name FROM sysobjects WHERE Type = 'p'"
    
          'Oracle Connection
          'Conn.Open "MyOracle", "MyUid", "MyPassword"
          'strSQL = "SELECT Distinct Name FROM user_source"
    
          Set Rs = New ADODB.Recordset
          Rs.Open strSQL, Conn, adOpenStatic, adLockReadOnly
    
          Do While Not Rs.EOF
              List1.AddItem Rs(0)
              Rs.MoveNext
          Loop
    
          Form1.MousePointer = vbNormal
    
       End Sub
    
       Private Sub List1_Click()
    
          ListADOParameters (Trim(List1.Text))
    
       End Sub
    
       Sub ListADOParameters(strStoredProcedureName As String)
    
       Dim Cmd As New ADODB.Command
       Dim P As ADODB.Parameter
       Dim i As Integer
    
          Debug.Print "-------------Starting---------------"
          Set Cmd.ActiveConnection = Conn
          Cmd.CommandText = strStoredProcedureName
          Cmd.CommandType = adCmdStoredProc
          Cmd.Parameters.Refresh
    
          For i = 0 To Cmd.Parameters.Count - 1
             Set P = Cmd.Parameters(i)
    
             'Returns a string like this:
             'Parameter[0] is [INID] with ADO DataType adNumeric,
             'Size is 0, Direction is Input.
    
             Debug.Print "Parameter[" & i & "] is [" & P.Name _
               & "] with ADO DataType " _
               & GetDataTypeEnum(P.Type) & ", Size is " _
               & P.Size & ", Direction is " & GetDirectionEnum(P.Direction)
    
          Next i
    
       End Sub
    
       Function GetDirectionEnum(lngDirectionEnum As Long) As String
       Dim strReturn As String
          Select Case lngDirectionEnum
             Case 1: strReturn = "Input"
             Case 2: strReturn = "Output"
             Case 3: strReturn = "Input Output"
             Case 4: strReturn = "Return Value"
             Case Else:
                strReturn = "Unknown DirectionEnum of " & lngDirectionEnum _
                  & " found."
             End Select
             GetDirectionEnum = strReturn
    
          End Function
    
          Function GetDataTypeEnum(lngDataTypeEnum As Long) As String
          'Given ADO data-type constant, returns readable constant name.
          Dim strReturn As String
             Select Case lngDataTypeEnum
                Case 0: strReturn = "adEmpty"
                Case 16: strReturn = "adTinyInt"
                Case 2: strReturn = "adSmallInt"
                Case 3: strReturn = "adInteger"
                Case 20: strReturn = "adBigInt"
                Case 17: strReturn = "adUnsignedTinyInt"
                Case 18: strReturn = "adUnsignedSmallInt"
                Case 19: strReturn = "adUnsignedInt"
                Case 21: strReturn = "adUnsignedBigInt"
                Case 4: strReturn = "adSingle"
                Case 5: strReturn = "adDouble"
                Case 6: strReturn = "adCurrency"
                Case 14: strReturn = "adDecimal"
                Case 131: strReturn = "adNumeric"
                Case 11: strReturn = "adBoolean"
                Case 10: strReturn = "adError"
                Case 132: strReturn = "adUserDefined"
                Case 12: strReturn = "adVariant"
                Case 9: strReturn = "adIDispatch"
                Case 13: strReturn = "adIUnknown"
                Case 72: strReturn = "adGUID"
                Case 7: strReturn = "adDate"
                Case 133: strReturn = "adDBDate"
                Case 134: strReturn = "adDBTime"
                Case 135: strReturn = "adDBTimeStamp"
                Case 8: strReturn = "adBSTR"
                Case 129: strReturn = "adChar"
                Case 200: strReturn = "adVarChar"
                Case 201: strReturn = "adLongVarChar"
                Case 130: strReturn = "adWChar"
                Case 202: strReturn = "adVarWChar"
                Case 203: strReturn = "adLongVarWChar"
                Case 128: strReturn = "adBinary"
                Case 204: strReturn = "adVarBinary"
                Case 205: strReturn = "adLongVarBinary"
             Case Else:
                strReturn = "Unknown DataTypeEnum of " & lngDataTypeEnum _
                 & " found."
             End Select
             GetDataTypeEnum = strReturn
          End Function 
    					
Projeyi çalıştırın ve bir saklı yordamın listeden seçin. Sonuçlar, hata ayıklama penceresinde görüntülenir.

Referanslar

Ek bilgi için lütfen Microsoft Knowledge Base'de aşağıdaki makaleye bakın:
175018  (http://support.microsoft.com/kb/175018/EN-US/ ) Al ve Microsoft Oracle ODBC sürücüsü yükleme

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft ActiveX Data Objects 1.0
  • Microsoft ActiveX Data Objects 1.5
  • 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 kbdatabase kbhowto kbstoredproc KB181199 KbMttr
Otomatik TercümeOtomatik Tercüme
Ö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:181199  (http://support.microsoft.com/kb/181199/en-us/ )
Retired KB ArticleKullanı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.