我有一个要求,我需要将数据从数据表复制到多维数组,但当我声明多维数组时,我得到内存错误。请提出解决方案。
Dim my_array(number, number, number, number, number, number, number, number, number, number, number) As String
其中number是来自数据库的行数,即SELECT COUNT(COL.NAME) FROM TABLE_NAME
。
如果我使用:
Dim my_array(number, number, number, number, number, number, number, number, number) As String
没有错误。
答案 0 :(得分:0)
在阅读文档时,您似乎已跳过this section。如果我理解正确,您正在尝试创建x,y
数组。我建议您使用多维数组,而不是使用锯齿状数组。
以下是我创建10行3列的示例:
Dim tableArray As String(,) = New String(10, 3) {}
For rowIndex As Integer = 0 To 9 '0,1,2,3,4,5,6,7,8,9 = 10 rows
For columnIndex As Integer = 0 To 2 '0,1,2 = 3 columns
tableArray(rowIndex, columnIndex) = String.Format("Row={0}, Column={1}", rowIndex, columnIndex)
Next
Next
但是,更好的方法是简单地copy数据表。
Dim table2 As DataTable = table1.Copy()
如果您需要过滤表格,请使用表格的默认data view:
table1.DefaultView.RowFilter = "Name LIKE '*Smith*'"
Dim table2 As DataTable = table1.DefaultView.ToTable()
或创建新的数据视图:
Dim view As New DataView(table1)
view.RowFilter = "Name LIKE '*Smith*'"
Dim table2 As DataTable = view.ToTable()