2014-10-05 34 views
0

我做訪問應用程序,我已經查詢建立在日期標準 這是我的查詢如何在訪問2013年按日期查詢?

Set sales = CurrentDb.OpenRecordset("Select * From sales where action_date = #" & date_actions & "#") 

我在Windows中更改日期dd/mm/yyyy

但是,當我嘗試運行此查詢沒有任何反應 但當我將其更改爲默認值MM/d/yyyy 它正確運行

如何解決此問題?請在此先感謝

回答

1

我建議使用以下格式:YYYY-MM-DD HH:MM:SS

您可以將如下的日期:

Format(date_actions, "yyyy-mm-dd hh:mm:ss") 

然後你的聲明將是:

Set ftm_date = Format(date_actions, "yyyy-mm-dd hh:mm:ss") 
Set sales = CurrentDb.OpenRecordset("Select * From sales where action_date = #" & ftm_date & "#") 
+0

Access/JET不支持這種格式。您的答案可能適用於SQL DB。您可以參考我的答案,瞭解正確的訪問格式。 – PaulFrancis 2014-10-06 09:46:41

+2

@PaulFrancis錯誤。 ACE/Jet當然支持日期/時間文字中明確的'yyyy-mm-dd'格式。 – 2014-10-06 09:53:23

0

JET引擎交易日期以美式格式,而不是常規的DD/MM/YYYY HH:NN:SS。所以你需要相應的格式化日期。

Set sales = CurrentDb.OpenRecordset("SELECT * " & _ 
            "FROM " & _ 
            "sales " & _ 
            "WHERE action_date = " & Format(date_actions, "\#mm\/dd\/yyyy\#")) 

希望這會有所幫助。