我有很多文本框和4个列表视图。每个列表视图都包含许多选项。用户将一些数据输入到文本框中,并从列表视图中选择任意数量的选项。然后将所有这些插入数据库中的一行。目前,我正在从每个列表视图中收集所有选定的选项,并将它们连接在一起,每个列表一个字符串并插入连接的字符串。
'retrieve reference type 1s selected
For i = 0 To listRef3.CheckedItems.Count - 1
selectedRef3.Add(listRef3.CheckedItems(i).Text)
Next
'join array contents into one delimited string to be added to the database
refType3 = String.Join(",", selectedRef3.ToArray())
然而,这使得从列表视图中检索单个选择变得棘手,因为我希望能够根据以后的选择过滤不同的数据库。
是否可以创建一个insert语句,将每个listview选择动态地添加到数据库中的特定列,因为用户可以从列表中选择任意数量的项目?
答案 0 :(得分:1)
你应该能够通过建立现有的连接语句来构建所需的语句(我假设你从检查项目中得到的文本就像“ref1”等等。我能理解你的正确吗?)
Dim cols, vals, insertStatement As String
cols = String.Join(", ", selectedRef3.ToArray())
vals = "@" & String.Join(", @", selectedRef3.ToArray())
insertStatement = "insert into ListTable (" & cols & ") VALUES (" & vals & ")"
如果有任何错误,请道歉;我的VB有点生锈。