2012-01-07 81 views
1

我在Excel VBA ADO中使用Microsoft.Jet.OLEDB.4.0提供程序來連接到本地存儲的.csv和.xls文件。我使用MS Access函數here的列表作爲我可以在SQL中爲Jet編寫的指南。但並不是所有的功能都支持,而且我在解決某些問題的語法時遇到了問題。使用ADO的Microsoft Jet OLEDB 4.0 SQL函數參考?

問題1

是否有一個參考的地方爲一組,我可以通過ADO在我的Jet查詢使用SQL函數?

問題2

什麼是對的IF(或CASE)語句正確的語法?沒有IF,下面的查詢運行良好。

sql = "   SELECT " 
    sql = sql & "  Date() as `Import Date`, " 
    sql = sql & "  `Name` as `User`, " 
    sql = sql & "  `Role Title` as `Role`, " 
    sql = sql & "  If 1=1 Then 1 Else 0 EndIf as `testing` " 
    sql = sql & "  FROM [Sheet1$] a " 

資源

我不明白我在任何提供hereherehere的答案尋找。

這看起來應該是在正確的地方,但它似乎並沒有展示如何使用IF/CASE在SELECT語句,或者什麼字符串函數可

http://office.microsoft.com/en-us/access-help/CH006252688.aspx

+0

即使沒有If語句,我也很驚訝。您正在使用back-ticks,並且這些未在Jet/ACE SQL和保留字中使用,這可能會導致問題。 – Fionnuala 2012-01-07 09:41:31

回答

4

問題1 ,這SO answer列出了一些很好的資源,包括鏈接到Intermediate SQL for Jet 4.0 article

對於問題2,做了IifSwitch功能的搜索。

+0

謝謝Doug - IIf工作得很好。現在希望有人可以發掘一個通用的參考! – 2012-01-07 03:18:51