我想传递一个字符串数组作为 SQL 参数,但是当我执行命令时,它会抛出一个异常,上面写着“对象必须实现 IConvertible”。这是代码(所有三列都是nvarchar):
Public Sub sendsms(messageBodies As String(), ByVal recipientNumbers As String(), Optional ByVal chkMsgIds As string() = Nothing)
Dim con As New SqlConnection
con.ConnectionString = connection.Sms
Dim cmd As New SqlCommand("insert into sentmessage (text,id,number) values (@text,@id,@number)", con)
cmd.Parameters.Add("@text", Data.SqlDbType.NVarChar, n).Value = messageBodies
cmd.Parameters.Add("@id", Data.SqlDbType.NVarChar, n).Value = chkMsgIds
cmd.Parameters.Add("@number", Data.SqlDbType.NVarChar, n).Value = recipientNumbers
con.Open()
cmd.ExecuteNonQuery()
con.Close()
cmd.Dispose()
End Sub
我创建了这个例程来将大量记录插入数据库,正确的方法是什么?