19/02/2012, 17:04
drummers
 Private Sub Listele(ByVal Sql As String)
        Dim baglanti As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='tablolar.mdb'") 'Veritabanımızın yerini belirtiyoruz.
        Dim veriler As New DataTable("data")
        Dim adapter As New OleDbDataAdapter(SQL, baglanti)
        adapter.Fill(veriler) 'buradaki veriler oluşturduğumuz sanal tablo.
        DataGridView1.DataSource = veriler 'veri tabanından gelen kayıtları DataGridView'e aktarıyoruz .
    End Sub
 Private Sub doldur()
        Dim baglanti As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='tablolar.mdb'")
        baglanti.Open()
        Dim komut As New OleDb.OleDbCommand("SELECT firmaad FROM data ORDER BY firmaad", baglanti)
        Dim oku As OleDb.OleDbDataReader
        oku = komut.ExecuteReader()
        baglanti.Close()
    End Sub
'kaydet
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim Sql As New String("INSERT INTO data (firmaad,adres) values ('" & TextBox1.Text & "', '" & TextBox2.Text & "')")
        Dim sql2 As New String("INSERT INTO ortak (firmaad,ortakad,ortakadres) values ('" & TextBox1.Text & "', '" & TextBox3.Text & "', '" & TextBox4.Text & "')")
        Sql = String.Format(sql, TextBox1.Text)
        Dim baglanti As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='tablolar.mdb'")
        Dim komutnesnesi As New OleDb.OleDbCommand(sql, baglanti)
        Dim komutnesnesi2 As New OleDb.OleDbCommand(sql2, baglanti)
        Dim sonuc As Integer
        Dim sonuc2 As Integer
        baglanti.Open()
        sonuc = komutnesnesi.ExecuteNonQuery()
        sonuc2 = komutnesnesi2.ExecuteNonQuery()
        If sonuc = 1 And sonuc2 = 1 Then
            MsgBox("Yandaki Girdiğiniz Veriler Veri Tabanına Kayıt Olmuştur.", MsgBoxStyle.Exclamation, "Tebrikler")
        End If
        Listele("SELECT * FROM data'")
        baglanti.Close()
    End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically
        DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
        Listele("SELECT * FROM data'")
        doldur()
    End Sub
'Temizle
    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Me.TextBox1.Text = ""
        Me.TextBox2.Text = ""
        Me.TextBox3.Text = ""
        Me.TextBox4.Text = ""
    End Sub
Private Sub DataGridView1_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
        TextBox1.Text = IIf(IsDBNull(DataGridView1.CurrentRow.Cells(0).Value), "", DataGridView1.CurrentRow.Cells(0).Value)
        TextBox2.Text = IIf(IsDBNull(DataGridView1.CurrentRow.Cells(1).Value), "", DataGridView1.CurrentRow.Cells(1).Value)
        'TextBox3.Text = IIf(IsDBNull(DataGridView1.CurrentRow.Cells(2).Value), "", DataGridView1.CurrentRow.Cells(2).Value)
        'TextBox4.Text = IIf(IsDBNull(DataGridView1.CurrentRow.Cells(3).Value), "", DataGridView1.CurrentRow.Cells(3).Value)
    End Sub
Bu kodlar ile "tablolar.mbd" veritabanımda "data" ve "ortak" tablosuna kayıtlarımı aktarıyorum...
Yapamadıklarım şunlardır:
- Eğer TextBox3 ve TextBox4 de veri yoksa "ortak" tablosuna veri kaydı yapılmasın
- DataGridView1 de öncelikle "data" ve yanında "ortak" tablosu gösterilsin
- DataGridView1 de bir firma tıklandığında "data" ve "ortak" tablolarındaki verileri textboxlara gelsin.
Eğer mümkünse isteğimde şudur:
- DataGridView1 de tıklanınca textboxlara gelen verileri düzenleme kodu
- DataGridView1 de tıklanınca textboxlara gelen verileri silme kodu
Teşekkürler...