我是asp.net的新手 有什么办法可以在一行中显示不同的数据,从另一个表的同一列中提取数据? 列名为hello,包含3种类型的数据 我要说我的代码是这样的:
cmd1.CommandText = " SELECT hello FROM link where mode=@model and procedure =@procedure "
cmd1.CommandType = System.Data.CommandType.Text
Dim da1 As New SqlDataAdapter()
da1.SelectCommand = cmd1
Dim dt1 As New DataTable()
da1.Fill(dt1)
Dim myDataReader1 As SqlDataReader
myDataReader1 = cmd1.ExecuteReader()
Dim hello As String
If myDataReader1.HasRows Then
Do While myDataReader1.Read()
hello= myDataReader1("hello").ToString()
Loop
lblhello.Text = hello
Else
lblhello.Text = ""
End If
myDataReader1.Close()
我的数据输出应该是:
日冰,YOYO,heyhey
但我最终得到了
heyhey
仅 请帮我解决这个问题
答案 0 :(得分:0)
您正在覆盖new Robot()
循环中每次迭代的hello
字符串。因此,您只显示该变量中包含的最后一个值。
您需要在每次迭代时连接值。您还需要在每个值之间添加Do while
以获得所需的输出。
变化:
,
到
hello = myDataReader1("hello").ToString()
或......
hello += myDataReader1("hello").ToString() & ","
编辑:由于上述解决方案会在hello = hello & myDataReader1("hello").ToString() & ","
的最后一次添加值末尾添加额外,
,因此您需要在显示最终版本之前将其删除字符串。
替换
hello
通过
lblhello.Text = hello