• Bir süredir maillerde yaşanan sorunlar giderilmiştir. Şifremi unuttum yaparak şifrelerinizi mailinizden alabilirsiniz.

  • Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Veri Tipi Sorunu

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Local

Yeni Üye
Kullanıcı Bilgileri
Aktiflik
Çevrimdışı
Katılım
19 Ağu 2023
Mesajlar
300
Çözümler
5
Aldığı beğeni
25
Excel V
Office 2016 TR
Konuyu Başlatan
Merhaba arkadaşlar aradan biraz zaman geçti programımın bitmesine az kaldı yalnız bir yerde sıkıntı çıktı onu size aktarmak istiyorum

Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.




yukardaki kod normalde insert olarak klasik olarak kaydediyordu ama zamanla problem çıkardı kaydetmeme gibi sorunlar oldu.Bende parameters olarak yaptım fakat verileri yarım yarım kaydetti textbox1 de ürün adları denk geliyor ürün adları birbirinden faklı karakter uzunluğu barındırıyor bunu çözemedim sunucu tarafında long ve text yaptım fakat olmadı vba da adlongvarchar yaptım olmadı yardımlarınızı bekliyorum
 
Parametreleri eklerken LEN yerine alanların alabileceği max değere göre sabit bir değeri kullanmayı ve Null değerler gönderilmesini kontrol etmenizi tavsiye ederim. Örneğin Kart_ID için parametre eklerken Len(txtid.Text) ile uzunluk hesaplatmak yerine mesela alanın alabileceği max uzunluk için 50 gibi bir sabit değer ve alanın NULL olması durumunda hataya sebebiyet vermemesi için Nz fonksiyonu ile kontrol ekleyerek Parameters.Append .CreateParameter("Kart_ID", adVarChar, adParamInput, 255, Nz(Kart_ID, "")) şeklinde düzenlemeniz daha sağlıklı olacaktır.
 
Yani bu şekilde sorunu halledebilirmiyim aslında kart ıd kısmında kaydetme ile ilgili bir sorun çıkartmadı asıl sorun textbox1 de aslında stok isimleri denk geliyordu ve stok isimleri birbirinden farklı uzunlukta bu verdiğiniz örnek ile bu sorunu aşabilir miyim
 
Aşmanız gerekir zira her kayıt ve alanda farklı bir uzunluk hesabı yapılmasının önüne geçmiş olur hem de doğru verileri aktarmış olursunuz. Bu arada Nz fonksiyonu ile ilgili olarak şayet kayıt yapacağınız alanlar string değil sayısal veya tarih bazlı alanlar ise örneğin Nz(Kart_ID, "") fonksiyonundaki gibi "" yerine Null ifadesi kullanmanız gerektiği hususunu unutmayın.
 
Denedim hocam yalnız ben access kullanmıyorum nz ifadesi olmadı parametre olmadan farklı bir kayıt sistemi yaptım .Bilgileriniz için sağolun
 
Çözüm
Haklısınız ADODB görünce şartlanmış gibi Accesse göre cevap yazmışım ama ODBC driverınız MySql için. Gerçi her halükarda mantık olarak aynı işlemleri yapmanızı tavsiye etmiş olacaktım. Sorunu aşmanıza sevindim. İyi çalışmalar.
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst