[英]Date condtion doesn't work on my application but work in SQL Server
我在提出請求時遇到了奇怪的麻煩。 我有一個表,字段名為datetime,名稱為'DATE'
。
這里是一個值的精確示例: 2015-03-09 00:00:00.000
我在應用程序中(在C#中)執行如下請求: 'SELECT ... WHERE DATE BETWEEN datedeb AND datefin'
這里的datedeb的價值究竟為例: 09/03/2015
當我在應用程序中執行請求時,它根本不起作用,沒有結果。
當我在SQL Server中復制請求(通過MessageBox.Show())時,它可以工作。
當我在應用程序中將datedeb和datefin更改為2015-03-09時,它不起作用。
當我在SQL Server中更改時,它可以工作。
我真的不知道問題出在哪里...您有什么想法嗎?
像這樣:
SqlCommand command = new SqlCommand("Select * from whatever where Date Between @begin and @end");
command.Parameters.Add(new SqlParameter("begin", yourbegin));
command.Parameters.Add(new SqlParameter("end", yourEnd));
...
yourBegin和yourEnd的類型為DateTime ...
嘗試使用此:
SqlCommand command = new SqlCommand("SELECT * FROM TABLE WHERE DATE BETWEEN @begin and @end");
command.Parameters.Add("@begin", SqlDbType.DateTime).Value = DateTime.Now;
command.Parameters.Add("@end", SqlDbType.DateTime).Value = DateTime.Now.AddDays(1);
我想說的是,最好將參數作為DateTime類型發送,這樣就不必處理語言環境問題。
好的,我是一個非常愚蠢的男孩。 您知道問題出在哪里嗎? 我忘了寫我想在ConnectionString中使用的數據庫。 我有幾個非常相似的數據庫。 我的應用程序正在其他表中搜索...我非常愚蠢! 非常感謝您的時間,您真棒,特別是@Florian Schmidinger對不起,您很愚蠢
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.