İki tabloya kayıtta şart
Tarih
19/02/2012 17:04
Konu Sahibi
drummers
Yorumlar
3
Okunma
1386
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



drummers
Omur Can
Kullanici Avatari
Destek
O.... C....
398
11/05/2009
125
İzmir
Ofis 2003
29/11/2016,13:56
Çözüldü 

Visual Basic Code
1
2
3
4
5
6
7
 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


Visual Basic Code
1
2
3
4
5
6
7
8
 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


Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
'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


Visual Basic Code
1
2
3
4
5
6
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


Visual Basic Code
1
2
3
4
5
6
7
'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


Visual Basic Code
1
2
3
4
5
6
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...

Ek Dosyalar
bagli1.rar
[529.02 KB]
drummers, 11-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla


drummers
Omur Can
Kullanici Avatari
Destek
O.... C....
398
11/05/2009
125
İzmir
Ofis 2003
29/11/2016,13:56
Çözüldü 

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
'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 (datafirmaad,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 inner join ortak on data.firmaad = ortak.datafirmaad")
        baglanti.Close()
    End Sub


1- Kaydetmeyi şu şekilde becerdim. Fakat text3 ve text 4 boş ise "ortak" tablosuna kayıt yapma şartını koyamadım.

2- Datagrid tıklanınca verileri textboxlarada getiriyor . Gelen verileri düzenleme ve silmeyi beceremedim.

drummers, 11-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla


ayhan2122
accesstr.net , gayet net ;)
Kullanici Avatari
Uzman
681
30/10/2008
451
-
Ofis 2003
Bugün,00:25
Çözüldü 
Sn drummers;
if textbox1.text="" or textbox2.text="" then
'gerçekleştirilecek olaylar...
else
'gerçekleştirilecek olaylar...
end if
komutları ile istediğin koşulu sağlayabilirsin, hatırlatmış olayım.
Güncelleme ve silme için Sql oluşturmalısın.
Güncelleme için örn Sql : "UPDATE TabloAdı SET Alan1='abc' , Alan2=345 WHERE AlanNO=2"
Silme için örn Sql :"DELETE * FROM TabloAdı WHERE AlanNO=4"

Alıntı:DataGridView1 de öncelikle "data" ve yanında "ortak" tablosu gösterilsin
Nasıl bir tablo yapısıdır, ne yapmak istiyorsun, inan anlaşılmıyor.
data tablosu ile ortak tablosu arasında nasıl bir bağlantı-ilişki var inan çözemedim.
Saygılar, iyi çalışmalar.
*********
Kod, formül vs bilmek önemlidir ama mantığını yürütebilmek, nerede ve nasıl kullanılacağını bilmek daha önemlidir.
Cevapla


drummers
Omur Can
Kullanici Avatari
Destek
O.... C....
398
11/05/2009
125
İzmir
Ofis 2003
29/11/2016,13:56
Çözüldü 
(19/02/2012, 22:28)ayhan2122 Adlı Kullanıcıdan Alıntı: Sn drummers;
if textbox1.text="" or textbox2.text="" then
'gerçekleştirilecek olaylar...
else
'gerçekleştirilecek olaylar...
end if
komutları ile istediğin koşulu sağlayabilirsin, hatırlatmış olayım.
Güncelleme ve silme için Sql oluşturmalısın.
Güncelleme için örn Sql : "UPDATE TabloAdı SET Alan1='abc' , Alan2=345 WHERE AlanNO=2"
Silme için örn Sql :"DELETE * FROM TabloAdı WHERE AlanNO=4"

Alıntı:DataGridView1 de öncelikle "data" ve yanında "ortak" tablosu gösterilsin
Nasıl bir tablo yapısıdır, ne yapmak istiyorsun, inan anlaşılmıyor.
data tablosu ile ortak tablosu arasında nasıl bir bağlantı-ilişki var inan çözemedim.

Soruyu yanlış yazmışım.

Aşağıdaki kaydet kodu

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
'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 (datafirmaad,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 inner join ortak on data.firmaad = ortak.datafirmaad")
        baglanti.Close()
    End Sub


Textbox1.Text verisini ve Textbox2.Text verisini "data" tablosuna
Textbox1.Text verisini , Textbox3.Text verisini ve Textbox4.Text verisini "ortak" tablosuna kayıt etmekte

Kayıt Şartı Şu Olacak:
Textbox3.Text ve Textbox4.Text de veri varsa "ortak" tablosuna kayıt yapacak aksi halde

sadece Textbox1.Text verisini ve Textbox2.Text verisini "data" tablosuna kayıt yapacak.

Birde "kaydet" butunundaki kodların "düzenle" ve "sil" kodu lazım

Teşekkürler

Mantık şu: text1 ve text2 firma bilgileri, text3 ve text4 firmaya bağlı ortakların bilgileri





drummers, 11-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
Çözüldü Bir den fazla tabloya Update yapma. oztuncla 2 1.823 06/06/2013, 22:41 oztuncla
Çözüldü Sorgulamada şart hakkında drummers 7 1.742 29/02/2012, 00:38 ercansahin
Çözüldü İki tabloya kayıt drummers 4 1.908 04/02/2012, 21:52 drummers


Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2016 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya