2011-07-11 36 views
0

我想編寫VB.NET查詢,而不寫入SQL存儲特效。我已經獲得許多數據集文本查詢的工作。但是我無法使這個標量查詢正常工作。我想要做的就是得到這個T-SQL查詢的結果。我怎樣才能成功地編碼?如何在SQL數據庫中編寫VB.NET中的標量查詢?

select (DateDiff(w, '1/1/' + '2011', getdate()))/7 AS SELECTED_WEEK 

(該代碼的功能是返回當年的當前周)。上面的查詢將返回值作爲一個整數數據類型或字符串?

我想你的答案,但它給了我這個異常錯誤:

System.InvalidOperationException: ExecuteReader requires an open and available Connection. The connection's current state is Closed. 

你知道這是什麼意思?

回答

1
Dim result As Integer 
Dim sql As String = "select (DateDiff(w, '1/1/' + '2011', getdate()))/7 AS SELECTED_WEEK" 

Using cn As New SqlConnection("your connection string here"), _ 
     cmd As New SqlCommand(sql, cn) 

    cn.Open() 
    result = Convert.ToInt32(cmd.ExecuteScalar()) 
End Using 
+0

由於這是什麼但是我試過了,我得到這個錯誤: – user371819

+0

喬爾,你可以在我的修訂說明一下上面? – user371819

+0

@user不要忘記我放在那裏的cn.Open()調用。 –