sql sorgusunun sonucunu değişkene nasıl atarım?

Morgengabe
10-06-2009, 13:39   |  #1  
OP Üye
Teşekkür Sayısı: 0
76 mesaj
Kayıt Tarihi:Kayıt: Mar 2004

Selam arkadaşlar,

VB 2008 Express Edition, Access veritabanı (mdb) ve ADO.NET 3.5 ile bir proje hazırlıyorum. Tabi datasetle uğraşıyorum.

Bir sql sorgusunun sonucundan (tek satır döndürdüğünü düşündüğümüzde) istediğimiz bir alanı bir değişkene nasıl atarız? Bunun için neler yapmak gerekir?

Morgengabe
10-06-2009, 14:59   |  #2  
OP Üye
Teşekkür Sayısı: 0
76 mesaj
Kayıt Tarihi:Kayıt: Mar 2004

Şu şekilde hallettim:

Module Fonkiyon
    Dim vb_baglanti As OleDb.OleDbConnection
    Dim bilgi As OleDb.OleDbDataReader
    Dim vb_komut As OleDb.OleDbCommand

    Sub baglan()

        vb_baglanti = New OleDb.OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; DATA Source=|DataDirectory|\personel.mdb")
        vb_baglanti.Open()

    End Sub

    Function MuesseseAdi(ByVal Numara As Byte) As String
        Dim MuesseseIsmi As String

        Call baglan()

        vb_komut = New OleDb.OleDbCommand("Select MueAdi from Muessese where ID=" & Numara, vb_baglanti)
        bilgi = vb_komut.ExecuteReader()

        Do While bilgi.Read()
            MuesseseIsmi = bilgi.Item("MueAdi")
        Loop

        bilgi = Nothing
        vb_baglanti.Close()

        Return MuesseseIsmi

    End Function

End Module

PcMaKeR
15-06-2009, 04:42   |  #3  
PcMaKeR avatarı
Yıllanmış Üye
Teşekkür Sayısı: 6
8,935 mesaj
Kayıt Tarihi:Kayıt: Eki 2005

bak orda vb_komut u şöyle yaparsan daha iyi olur:
Dim a As New OleDbCommand("select * from user where (userid=@userid)")'bu satırdaki sorgu parametreli sorgudur.
a.Parameters.Add(New OleDbParameter("@userid", 1)) 'bu satır korumaya alır
'bu sorgu sql e göre hazırlandı. Eğer access kullanacaksan @ işaretlerini ? işareti yapacaksın ;)