vb.net。 SQL SUM和Between,不能求值

时间:2015-10-06 05:05:40

标签: sql-server vb.net

我使用这种语法来解析id之间的一些数据..但是它只选择了最后一个id的值..

我有3个桌子,有id,到达,离开和距离..

这是语法:

SQLcmd = New SqlCommand("SELECT SUM(CAST(distance AS Numeric(10, 0))) FROM route WHERE id BETWEEN  " & s & "  AND  " & w & "", SQLCon)
    Dim r As SqlDataReader = SQLcmd.ExecuteReader

    r.Read()
    distance2 = r(0).ToString

s和w是整数

所以我在textbox1.text = distance2 ..

上显示距离的值

问题是,该值不是该查询的SUM,但textbox1.text的值是" w"的值。 sqlserver上的查询是可行的,我将s和w替换为1和3,但是当我在VB.net上使用时它不起作用..

任何人都可以提供帮助吗?

1 个答案:

答案 0 :(得分:-1)

我建议你在哪里

... " & s & "  AND  " & w & "...

你需要

... " + s.ToString() + "  AND  " + w.ToString() + " ...

否则& operator不会执行字符串连接,而是进行类型转换。对此的规则是神秘的(看看here为引物)。