2012-10-29 55 views
1

我完全不熟悉Visual Basic。我正在使用MYSQL數據庫,我想在Excel中使用VB,因此我可以處理更復雜的查詢。出於某種原因,當我嘗試在vb中連接表時,出現錯誤消息。有人可以告訴我我的代碼有什麼問題嗎?在VBA中使用MYSQL查詢連接表(excel)

strSql = "SELECT COUNT(*)FROM `order`" & _ 
       "JOIN user ON user.id = order.destination_id" & _ 
       "WHERE payment_status = 'pay';" 

    rs.Open strSql, oConn, adOpenDynamic, adLockPessimistic 

    res = rs.GetRows 

    rs.Close 

    Range("A1", "A6") = res(0, 0) 
+1

什麼是錯誤信息? – Kermit

回答

2

當前的查詢將產生這個字符串,

SELECT COUNT(*)FROM `order`JOIN user ON user.id = order.destination_idWHERE payment_status = 'pay'; 
      ^  ^          ^

您在拼接過程中缺乏空間,以糾正,只需雙引號前加空格。

strSql = "SELECT COUNT(*) FROM `order` " & _   
     "JOIN user ON user.id = order.destination_id " & _ 
     "WHERE payment_status = 'pay';" 
+0

非常感謝John!有效。但是我的代碼出了什麼問題。他們幾乎是一樣的? – user1783504

+0

不,你沒有空間。看到我更新的答案。 –