2012-12-04 78 views
-1

作爲SQL和VBS編程的初學者,我遇到以下問題。我想確定一個SQL表中的行數,將該值保存到VBS變量中,然後在for循環中使用它。 我想出了下面的代碼,但很明顯,我在這裏失去了一些東西,我基本卡住了。將SQL語句中的值保存到VBS變量中

num_rows = "SELECT COUNT(id) FROM recepti_sol" 

For y = 0 To "num_rows" 

請幫我完成代碼。 感謝您的時間和精力!

+0

這是幾天前自己的問題的複本:http://stackoverflow.com/questions/13688148/vbs-determine-number-of-records-in-sql-table – Andrew

回答

1

編輯 這是一個SQL服務器
把它作爲最簡單的運行,但不使其生產,因爲它有明文密碼的例子。反正它可以根據你的SQLSERVER配置失敗,但你可以用diferent連接字符串修復,所以,再一次,瞭解他們

set conn= CreateObject("ADODB.Connection") 
conn.Open "Driver={SQLServer};Server=Your_Server_Name;Database=Your_Database_Name;Uid=sa;Pwd=saPassword;" 
set rs = CreateObject("ADODB.recordset") 
rs.Open "SELECT COUNT(id) as num_rows FROM recepti_sol", conn 
For y = 1 To rs("num_rows") 
    ... 
    ... 
next 
rs.close 
conn.close 
set rs = nothing 
set conn = nothing 
+0

你的循環將失敗: 0 .. num_rows == num_rows + 1. –

+0

將無法​​做什麼????? –

+0

假設num_rows == 2:您的循環將重複3次:0,1,2 –