Tablodan Tabloya Veri Aktarma

1 2 3
24/02/2020, 17:35

ozanakkaya

Konu başlığındaki sorunuzun dışına çıkmayınız. Yapmak istediğiniz Tablodan Tabloya Veri Aktarma.

Ado ile tbl_disiplinkarari tablosuna veri aktarıyorsunuz. insert into ile tekrar veri aktarırsanız yeni satıra kayıt eder. Güncelleştirme sorgusu kullanmalısınız. Bu sorguyuda ado dışına yazmalısınız.

If IsNull(Me.Metin3) Or Me.Metin3 = "" Then
  MsgBox "Lütfen Karar numarasını Yazınız!", , "Kayıt İşlemi"
  Me.Metin3.SetFocus
  Exit Sub
End If


If IsNull(Me.Metin5) Or Me.Metin5 = "" Then
  MsgBox "Lütfen Karar Tarihini Giriniz!", , "Kayıt İşlemi"
  Me.Metin5.SetFocus
  Exit Sub
End If

If IsNull(Me.Metin7) Or Me.Metin7 = "" Then
  MsgBox "Lütfen Olay Bilgisini Seçiniz!", , "Kayıt İşlemi"
  Me.Metin7.SetFocus
  Exit Sub
End If
If IsNull(Me.Açılan_Kutu13) Or Me.Açılan_Kutu13 = "" Then
  MsgBox "Lütfen Disiplin Kararı Oluşturulacak Kişiyi Seçiniz!", , "Kayıt İşlemi"
  Me.Açılan_Kutu13.SetFocus
  Exit Sub
End If
If IsNull(Me.Açılan_Kutu15) Or Me.Açılan_Kutu15 = "" Then
  MsgBox "Lütfen Ceza Alıp Almadığını Seçiniz!", , "Kayıt İşlemi"
  Me.Açılan_Kutu15.SetFocus
  Exit Sub
End If

Dim rs As New ADODB.Recordset
If MsgBox("Değişiklikler Kaydedilsin mi?", 36, "Kayıt Ediliyor") = vbYes Then
rs.Open "tbl_disiplinkarari", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
rs.AddNew
rs!adsoyad = Me.Metin11.Column(1)
rs!kararno = Me.Metin3
rs!karartarihi = Me.Metin5
rs!olayinkurulagelistarihi = Me.Metin9
rs!oncekicezabir = Me.Açılan_Kutu13
rs!olayyeri = Me.Metin19
rs!olaytarihi = Me.Metin21
rs!davraniscesidi = Me.Metin23
rs!davranisnedeni = Me.Metin25
rs!cezaifadeozeti = Me.Metin28
rs!tanikifadeozeti = Me.Metin30
rs!delil = Me.Metin32
rs!hafiletenneden = Me.Metin34
rs!kurulkanaati = Me.Metin36
rs!cezaanamadde = Me.Metin38
rs!cezaaltmadde = Me.Metin40
rs!kurulkarari = Me.Metin42
rs!oncekicezaiki = Me.Açılan_Kutu15

'CurrentDb.Execute "select (velitel,veliadresi,veliadi,dogumyeri,yetistigicev,aileyani,annebabaoz,annebabasag,birlikteot,ekonomikdurum,saglikdurumu,basaridurumu,yatilidurumu,okulno,sınıfı,dogumtarihi) into tbl_disiplinkarari(velitel,adresi,veliadısoyadı,dogumyeri,yetistigicevre,aileyanindaokumasi,annebabaöz,annebabasag,ailesiilebirleteoturmadurumu,aileekonomikdurumu,saglikdurumu,basaridurumu,yatılı_gündüzlü,okulno,sınıfı,dogumtarihi) from tbl_ogrenciler where Kimlik =" & Me.Metin11 & ""
'CurrentDb.Execute "select velitel,veliadresi,veliadi,dogumyeri,yetistigicev,aileyani,annebabaoz,annebabasag,birlikteot,ekonomikdurum,saglikdurumu,basaridurumu,yatilidurumu,okulno,sınıfı,dogumtarihi from tbl_ogrenciler;"
'INTO tbl_disiplinkarari
'from tbl_ogrenciler
'where Kimlik = " & Me.Metin11 & """
rs.Update
rs.Close
Set rs = Nothing

CurrentDb.Execute "UPDATE tbl_disiplinkarari, tbl_ogrenciler SET tbl_disiplinkarari.velitel = [tbl_ogrenciler].[velitel], tbl_disiplinkarari.veliadresi = [tbl_ogrenciler].[adresi], tbl_disiplinkarari.veliadi = [tbl_ogrenciler].[veliadısoyadı], tbl_disiplinkarari.dogumyeri = [tbl_ogrenciler].[dogumyeri], tbl_disiplinkarari.yetistigicev = [tbl_ogrenciler].[yetistigicevre], tbl_disiplinkarari.aileyani = [tbl_ogrenciler].[aileyanindaokumasi], tbl_disiplinkarari.annebabaoz = [tbl_ogrenciler].[annebabaöz], tbl_disiplinkarari.annebabasag = [tbl_ogrenciler].[annebabasag], tbl_disiplinkarari.adsoyad = [tbl_ogrenciler].[yetistigicevre] WHERE (((tbl_disiplinkarari.kararno)='" & Me.Metin11.Column(1) & "'));"

MsgBox "Kayıt işlemi gerçekleşmiştir.", 64, "Kayıt İşlemi"
GoTo 777
Else
MsgBox "Kayıt İşleminden Vazgeçtiniz. Bilgileriniz Kaydedilmedi!", 64, "Kayıt İşlemi"
End If
777


Sorgudan önce Yapılmaması Gereken Ölümcül Hatalar
konusunda da belirtildiği gibi, bu denetimin adı Metin11 değil acl_adisoyadi olmalı ki, kod yazarken ne olduğunu çözebilesiniz.
25/02/2020, 09:49

SeferŞANLI

WHERE (((tbl_disiplinkarari.adsoyad)=" & Me.Metin11.Column(2) & "));"
Bu kısımda metinsel ifade de hata alıyorum. Yani açılan kutunun metinsel değerine eşitse demek istiyorum, ama çözemedim.
25/02/2020, 10:10

berduş

Değer metinse tek tırnak eklenmeli başa ve sona
WHERE (((tbl_disiplinkarari.adsoyad)='" & Me.Metin11.Column(2) & "'));"
25/02/2020, 10:22

SeferŞANLI

Bir şey daha rica edebilir miyim? yanlışmı biliyorum? kod yazarken alt satıra geçmek için;
CurrentDb.Execute "UPDATE tbl_disiplinkarari, tbl_ogrenciler SET tbl_disiplinkarari.velitel = [tbl_ogrenciler].[velitel], _
& tbl_disiplinkarari.veliadresi = [tbl_ogrenciler].[adresi], tbl_disiplinkarari.veliadi = [tbl_ogrenciler].[veliadısoyadı]
şeklinde olmayacak mı?

Ayrıca teşekkür ederim. İlgili düzenleme işimi çözmüştür.
25/02/2020, 10:31

SeferŞANLI

Tamam çözdüm arkadaşlar. Teşekkür ederim.
1 2 3