如下代码,我是加载了第一个表,再加载列,再遍历行,查找相关的数据,能不能用SQL 中的INNER JOIN语句,或者有没有其它更好的方法,
因为遍历的话,如果行数多的话,会很慢!
Dim cmd As new SQLCommand
Dim Sqldt1 As DataTable
cmd.C
cmd.CommandText = "sel ect Top 10 * from {ICInventory} "
Sqldt1 = cmd.ExecuteReader
Dim tb As Table = Tables(e.Form.Name & "_Table1")
Dim dt As DataTable = tb.DataTable
tb.DataSource = Sqldt1
Dim lms() As String = {"代码","名称","规格型号"}
For Each lm As String In lms
If lm = "用量" Then
dt.DataCols.Add(lm,Gettype(Single))
Else
dt.DataCols.Add(lm,Gettype(String),250)
End If
Next
Dim cmd As new SQLCommand
Dim Sqldt As DataTable
cmd.C
For Each r As Row In tb.Rows
cmd.CommandText = "Sel ect * From {t_ICItemCore} Where [FItemID] = '" & r("FItemID") & "'"
Sqldt = cmd.ExecuteReader
If Sqldt.DataRows.Count > 0 Then
Dim dr As DataRow = sqldt.DataRows(0)
r("代码") = dr("FNumber")
r("名称") = dr("FName")
r("规格型号") = dr("Fmodel")
End If
Next