AccessTr.neT
Ölçüt ifadesinde veri uyuşmazlığı hatası - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Visual Basic .NET (https://accesstr.net/forum-visual-basic-net.html)
+--- Forum: Visual Basic .NET Cevaplanmış Soruları (https://accesstr.net/forum-visual-basic-net-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Ölçüt ifadesinde veri uyuşmazlığı hatası (/konu-olcut-ifadesinde-veri-uyusmazligi-hatasi.html)

Sayfalar: 1 2 3


Ölçüt ifadesinde veri uyuşmazlığı hatası - x0914667 - 14/10/2010

Örnekteki; sorgula butonuna bastığımda,
ölçüt ifadesinde veri uyuşmazlığı hatasını alıyorum.
Tablodaki alan biçimleri aynı olmasına rağmen
hatayı düzeltemedim.Sorgu'yu text olarak menu'ye çıkardım.Bir hata
gözükmüyor gibi ama sorgu sonucunu göremiyorum.


Cvp: Ölçüt ifadesinde veri uyuşmazlığı hatası - POWER - 14/10/2010

Sn x914667,

VB kodunuzu inceledim.

Bende 2008 olmadığı için direct cevap yazamıyorum fakat sorununuz belli.

SQL sorgularında tarih ölçütü veriyorsanız tırnak işaretleri altında " değil # ile başlamanız gerekir, verdiği hatanın kaynağı budur.

Artı birde şuna dikkat etmeniz gerekir Sql ile sorgunuzu kısıtlıyorsanız tarihi

Gun/Ay/Yıl diye değilde Ay/Gün/yıl formatına dönüştürmeniz veya girdiyi bu formatta almanız lazım..İnşallah yardımcı olabilmişimdir.

WHERE (((T01.Tarih)<=#10/2/2010# And (T01.Tarih)>=#10/1/2010#))

Lütfen olumlu veya olumsuz geri dönüş yapınız...







Cvp: Ölçüt ifadesinde veri uyuşmazlığı hatası - x0914667 - 14/10/2010

Hocam;

Sorgunun tarih aralıklarındaki '" işaretleri aralıkların değişkenlerden gelmesinden
dolayıdır.Söylediğiniz gibi bunları kaldırıp # işareti koyduğumda tarih
aralık değişkenlerini tanımadı.


Cvp: Ölçüt ifadesinde veri uyuşmazlığı hatası - alpeki99 - 14/10/2010

VisualBasic.Net ten anlamıyorum C# tan az çok anlarım ama baktığım kadarıyla mantık aynı. Ne de olsa .Net değilmi harika birşey iki dil biliyor gibi oluyorsunuz. Neyse şimdi neler yapmalısınız ona bakalım:

- Access'te tarihleri sorgulamanız için aa/gg/yyyy formatına çevirmeniz lazım.


Dim ilktarih, sontarih As String
ilktarih = Convert.ToDateTime(startdate).Month.ToString & "/" & Convert.ToDateTime(startdate).Day.ToString & "/" & Convert.ToDateTime(startdate).Year.ToString
sontarih = Convert.ToDateTime(enddate).Month.ToString & "/" & Convert.ToDateTime(enddate).Day.ToString & "/" & Convert.ToDateTime(enddate).Year.ToString

Ben Sql kodunuzu kısalttım siz olması gerektiği gibi düzenlersiniz.


sqlcmdtext2 = "select * from " & Table & " where (Tarih <= #" & ilktarih & "#) or (Tarih >= #" & sontarih & "#)"

Metin kutusundaki değerler String'tir bunları Convert ile istediğiniz değişken türüne çevirmeniz lazım. Bende gayet güzel çalıştı problem yok.


Cvp: Ölçüt ifadesinde veri uyuşmazlığı hatası - x0914667 - 14/10/2010

Hocam;

Yönlendirmeniz için teşekkür ederim.
Çözümü buldum.Sizin bahsettiğiniz diyez(#) ile tarih formatındaki gösterim şeklinden
kaynalanıyormuş.Zaten onu
Public Sub Reset_Dates(ByVal textbox_end As TextBox, ByVal textbox_start As TextBox)
textbox_end.Text = Now.Month & "/" & Now.Day & "/" & Now.Year & " " & Now.Hour & ":" & Now.Minute & ":" & Now.Second
textbox_start.Text = DateAdd(DateInterval.Day, -1, Now).Month & "/" & DateAdd(DateInterval.Day, -1, Now).Day & "/" & DateAdd(DateInterval.Day, -1, Now).Year & " " & DateAdd(DateInterval.Day, -1, Now).Hour & ":" & DateAdd(DateInterval.Day, -1, Now).Minute & ":" & DateAdd(DateInterval.Day, -1, Now).Second
End Sub
buraya koymuştum ama aradaki işaretler "." şeklinde idi.
Teşekkürler.Gece yarısı uğraştırdım.



Cvp: Ölçüt ifadesinde veri uyuşmazlığı hatası - POWER - 14/10/2010

Sn x0914667,

Ekteki örneği incelermisiniz.

Lütfen olumlu veya olumsuz geri dönüş yapınız.

Not : 2010 ile yapılmıştır.
Sn alpeki99,

Yönlendirmenizi ve dinamizminizi takdir ediyorum... Teşekkürler.