二、忘记设置链接名称

如果SQLCommand操作的是外部数据源,那么一定要设置其ConnectionName属性,指定外部数据源名称:


Dim cmd As New SQLCommand

Dim dt As DataTable

cmd.ConnectionName = "外部数据源名称"

cmd.CommandText = "SELECT DISTINCT 产品, 客户 From {订单}"

dt = cmd.ExecuteReader()

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")

trv.BuildTree(dt, "产品|客户")

很多用户,包括我自己,都会犯这个错误,明明代码正确,却没有结果,折腾半天,只是因为没有设置数据源名称而已。

3.13.4 SQL应用实例

3.13.4.1 自行编码合并外部数据

我们知道,用Merger可以合并外部数据到表中,不过Merger没有排除重复内容的选项,有时不能满足我们的要求。例如项目中有一个员工表,要从一个外部文件中合并数据到这个员工表中,希望在合并过程中检查身份证号码,如果员工表已经存在相同身份证号码的行,则跳过此行。假定被合并的表和员工表的结构相同,代码如下:


Dim externalTable As DataTable = GetExternalTable()

For Each row As DataRow In externalTable.Rows

    Dim idNumber As String = row("身份证号码").ToString()

    If Not EmployeeTableExists(idNumber) Then

        EmployeeTable.ImportRow(row)

    End If

Next

为了更详细的了解如何操作数据库,您可以参考以下资源:操作数据库DataSet DateAdapter SqlCommandSqlCommand_Parameters,以及数据库操作实例。这些资源将帮助您更好地理解和应用这些操作!

更多关于合并数据的实例,可以查阅这篇数据源控件的实例操作与应用。了解数据库合并也是非常有帮助的,它提供了更为细致的操作指南和实例代码!

探索这些资源后,您一定会有更深刻的理解,编写更加高效的代码!