2011-12-02 67 views
1

我試圖查詢一個表中有兩個日期之間的日期的行。我正在使用的查詢是: -sql沒有返回任何行

addInventorySelectAll.SelectCommand = "SELECT * FROM AddInventory WHERE (DATE BETWEEN '"+row2Text1.Text+"' AND '"+row2TextBox2.Text+"')"; 

上午在asp.net頁面中使用數據源。文本框有日曆擴展Ajax控制在他們使用時添加數據到表中。所以日期的格式是相同的mm/dd/yyyy格式。查詢沒有結果。任何想法,我在這裏做錯了什麼?

+0

請把斷點線之上,在SelectCommand中的文字已經被分配檢查值後,將它複製到SQL Management Studio或其他數據庫工具並運行查詢。你有什麼結果嗎? –

+2

日期格式不是sql標準。 – Aristos

+1

您是否曾嘗試在SQL Management Studio中運行該查詢以查看它是否返回任何結果? –

回答

4

CAST and CONVERT

addInventorySelectAll.SelectCommand = "SELECT * FROM AddInventory 
    WHERE 
    (DATE BETWEEN CONVERT(datetime, '"+row2Text1.Text+"', 101) 
    AND CONVERT(datetime, '"+row2Text2.Text+"', 101))" 
+0

感謝這工作,只是在最後失蹤a)。非常感謝你的幫助。 –

+0

@dunkmaster是的,忘記了關閉paren。將更新其他人的答案。謝謝。 –

-1

嘗試使用<和>運營商,而不是

WHERE date >= '"+row2Text1.Text+"' AND date <= '"+row2TextBox2.Text+"' 

更新

我使用MM/DD/YYYY您只使用reliased。這與該格式不會工作unfornuatly但將與YYYY工作/ MM/DD

+0

這也不適用於我的情況。 –

+0

請閱讀更新 –