11. maj 2008 - 10:53Der er
6 kommentarer og 1 løsning
Finde alle records hvor dato værdi af et datetime stamp passer!
Hejsa.
Jeg har et datetime felt i min SQL DB. Når jeg loader min form vil jeg gerne finde alle de records som har samme dato værdi som en datetimepicker jeg har på formen, men tidsværdien er jeg ligeglad med.
Hvordan gør man det?
Min kode ser pt. sådan her ud, men den virker jo så selvfølgelig ikke, da tidsværdien også skal passe før sqlforespørgelsen giver resultat.
-------
public static Hashtable BillList(DateTime Date) { Hashtable result = new Hashtable(); string Query = ""; Query += "Select * from tbbills where createtime = '" + Date + "' order by createtime";
SqlDataReader Sqdr = Internal.SQL.SqlQuery(Query); while (Sqdr.Read()) { Bill B = new Bill(); B.Id = (int)Sqdr["Id"]; B.CloseTime = (DateTime)Sqdr["Closetime"]; B.CreateTime = (DateTime)Sqdr["Createtime"]; B.Customer = Customers.GetById((int)Sqdr["Customer"]); B.State = GetStateFromInt((int)Sqdr["State"]);
Så bruger du bare parameters på din sql query .... og bruger Datetime.Now.Date som parameter value ....
Burde virke bedre end overstående måde at gøre det på :-)
Eks: System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection("connection"); System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand("SELECT * FROM t1 WHERE Createtime = @p1", con); cmd.Parameters.AddWithValue("@p1", DateTime.Now.Date);
præcis ... og så er det en lidt nemmere overskuelig løsning, end den du allerede har brugt ... *heheh*
Men begge virker ... det må vel være det vigtigste.
// ouT
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.