我正在尝试将列表框中的数据列表保存到sql server作为批量数据,但我不知道。 这是我的代码:
cmd As New SqlClient.SqlCommand("INSERT INTO tblStudentPersonalInformation(studentregistrationumber,studentname,studentgender,studentdob,studentpicture,studentntsubjectssat,studentfamilymembers,) VALUES('" & txtStudentRegistrationNumber.Text & "','" & txtStudentName.Text & "','" & cmbStudentGender.Text & "','"
& studentdob & "','" & "',@studentpicture,'" & lbStudentSubjectsSat.Text & lbStudenttFamilyMembers.Text & "')",
databaseconnection.cn)
cmd.Parameters.Add(New SqlClient.SqlParameter("@studentpicture", SqlDbType.Image)).Value = IO.File.ReadAllBytes(openfile.FileName)
i = cmd.ExecuteNonQuery()
主题名称和家庭成员临时存储在列表框中,作为一个数据插入表格单元格中。 但我不知道如何将整个列表框数据存储在表格单元格中。有任何想法吗。提前欣赏。
答案 0 :(得分:0)
我想你问的是如何将列表框中的每个项目转换为单个字符串?像这样:
Dim itemList() As String, listMax As Integer, result As String, delim As String = "||"
'Set delim to whatever you want in between each listbox item
listMax = ListBox1.Items.Count - 1
If listMax >= 0 Then
ReDim itemList(listMax)
For i = 0 To listMax
itemList(i) = ListBox1.Items(i).ToString
Next
result = Join(itemList, delim)
End If
另外,请考虑这是关于SQL注入的强制性警告。我知道你知道如何使用paramaterize但是仍然将用户输入的字符串直接连接到你的命令中。 This answer解释了为什么这是一个坏主意。