çok Parametreli Sql Sorgusu
#25
(06-04-2021, 00:50)dsezgin demiş ki:
(06-04-2021, 00:45)adnnfrm demiş ki: Fakat "kısa metin" e çevirdiğimde kodda hata aldım. Onu nasıl düzeltebilirim.

X1 alanlarını metne çevirdim, diğerleri veri tipi sayı, hata vermeden çalıştı.

Sizin metodunuzda o hatayı vermedi fakat ben Halil hocamın onay kutulu metodunu kullnacağım büyük ihtimalle onda hata verdi kısa metin yapınca alan.



  Alıntı
Bu mesajı beğenenler:
#26
Visual Basic
  1. For x = 1 To 200
  2. If Controls("X" & x) = True Then
  3. SqlSil = "delete * from tmptablo1 where ([X" & x & "] not In (select [X" & x & "] from [Tablo2]))"
  4. CurrentDb.Execute SqlSil
  5. End If
  6. Next x


buradaki SqlSil aşağıdaki kodla değiştirip dener misiniz?
Visual Basic
  1. SqlSil = "delete * from tmptablo1 where (cstr([X" & x & "]) not In (select [X" & x & "] from [Tablo2]))"





  Alıntı
Bu mesajı beğenenler:
#27
Maalesef hocam yine aynı hata. 
Dosyanın son şekli ekte mevcuttur.



  Alıntı
Bu mesajı beğenenler:
#28
sorun galiba sizin tmptablo1 deki alanları kısa metin yapmamanızdan kaynaklanıyor çalışmayı değiştirdim tabloyu kendisi çalışma anında oluşturuyor böylece ana tablodaki alan türlei değişse bile sizin tmp tabloyu değiştirmenize gerek kalmıyor dilerim işinize yarar
kullanılan kodlar
Visual Basic
  1. Private Sub Cereceve_AfterUpdate()
  2.  
  3. For x = 1 To 200
  4.    If Me.Cereceve = 3 Then Controls("x" & x) = -1 - (Controls("x" & x)) Else Controls("x" & x) = Me.Cereceve
  5. Next x
  6. End Sub


form kapatılırken geçici tabloyu silme
Visual Basic
  1. Private Sub Form_Close()
  2. TmpTblSil
  3. End Sub


Visual Basic
  1. Private Sub Komut386_Click()
  2. TmpTblSil
  3. CurrentDb.Execute "SELECT * INTO [TmpTblSil] FROM [Tablo1];"
  4. 'hy__________________________________________Sorgu Güncelle
  5. For x = 1 To 200
  6. If Controls("X" & x) = True Then
  7. SqlSil = "delete * from TmpTblSil where ([X" & x & "] not In (select [X" & x & "] from [Tablo2]))"
  8. CurrentDb.Execute SqlSil
  9. End If
  10. Next x
  11. Me.Afrm.Form.RecordSource = "TmpTblSil"
  12. MsgBox "Bitti"
  13.  
  14. End Sub


geçici tabloyu silme kodu
Visual Basic
  1. Function TmpTblSil()
  2. On Error Resume Next
  3. Me.Afrm.Form.RecordSource = ""
  4. CurrentDb.Execute "drop table TmpTblSil"
  5.  
  6. End Function




Eklenti Dosyaları
.rar   AdnaFrm_in select_hy7.rar (Boyut: 2,34 MB / İndirilme: 68)



  Alıntı
Bu mesajı beğenenler:
#29
Hocam,
Tekrar tekrar teşekkür ederim. Çok faydalı ve güzel bir geliştirme oldu. Elinize sağlık.

Saygılarımla



  Alıntı
Bu mesajı beğenenler:
#30
rica ederim
İyi çalışmalar)



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  Güncelleme Sorgusu çalışmıyor ? karaayhan 3 400 05-04-2025, 22:08
Son Mesaj: karaayhan
  Tablodaki Alanı Alt Tablodan Alınan Değerle Güncelleme Sorgusu Lidervet 7 637 02-12-2024, 11:20
Son Mesaj: halily
  Formda Liste Sorgusu anno 1 345 15-07-2024, 00:29
Son Mesaj: dsezgin
  Gücelleme Sorgusu evren89 2 352 18-05-2024, 23:19
Son Mesaj: evren89
  [SORGU] Farklı Tablolarda Yer Alan Satış Bilgilerini Toplama Sorgusu Lidervet 1 481 09-11-2023, 00:54
Son Mesaj: dsezgin
  Güncelleştirme Sorgusu omergenc7 2 385 01-10-2022, 02:13
Son Mesaj: omergenc7
  [SORGU] Toplu Il Sorgusu Satir 19 1.155 14-08-2022, 12:14
Son Mesaj: halily
  Sql Sorgusu Nasıl Oluşturulur? Pattinstew12 3 425 02-06-2022, 17:46
Son Mesaj: beab05

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi