如何在vb.net中将文本文件的内容导入mysql表?

如何在vb.net中将文本文件的内容导入mysql表?,mysql,vb.net,Mysql,Vb.net,我在这一个上搜索了不同的论坛,但仍然没有运气。 我尝试了不同的代码,到目前为止,我的查询如下所示: Dim query As String query = "LOAD DATA LOCAL INFILE 'C:\swipeimport\A1_20130513.txt' INTO TABLE tbl_entrance_swipe (@var1)" & _ "SET Loc=SUBSTRING(@var1,1,3)," & _ "date=

我在这一个上搜索了不同的论坛,但仍然没有运气。 我尝试了不同的代码,到目前为止,我的查询如下所示:

Dim query As String
query = "LOAD DATA LOCAL INFILE 'C:\swipeimport\A1_20130513.txt' INTO TABLE tbl_entrance_swipe (@var1)" & _
           "SET Loc=SUBSTRING(@var1,1,3)," & _
           "date=SUBSTRING(@var1,4,8)," & _
           "time=SUBSTRING(@var1,12,3)," & _
           "temp=SUBSTRING(@var1,16,3)," & _
           "id=SUBSTRING(@var1,19,10);"
    con.Open()

    Dim sql As MySqlCommand = New MySqlCommand(query, con)

    Dim i As Integer = sql.ExecuteNonQuery()
    If (i > 0) Then
        MsgBox("Record is Successfully Inserted")
    Else
        MsgBox("Record is not Inserted")
    End If
    con.Close()
K0720130514045501018006D9566
我想将文本文件的内容导入表,我的表有以下字段:

Loc, date, time, temp, id.
文本文件的内容如下所示:

Dim query As String
query = "LOAD DATA LOCAL INFILE 'C:\swipeimport\A1_20130513.txt' INTO TABLE tbl_entrance_swipe (@var1)" & _
           "SET Loc=SUBSTRING(@var1,1,3)," & _
           "date=SUBSTRING(@var1,4,8)," & _
           "time=SUBSTRING(@var1,12,3)," & _
           "temp=SUBSTRING(@var1,16,3)," & _
           "id=SUBSTRING(@var1,19,10);"
    con.Open()

    Dim sql As MySqlCommand = New MySqlCommand(query, con)

    Dim i As Integer = sql.ExecuteNonQuery()
    If (i > 0) Then
        MsgBox("Record is Successfully Inserted")
    Else
        MsgBox("Record is not Inserted")
    End If
    con.Close()
K0720130514045501018006D9566
其中分项数字如下:

K07        ----> Loc
20130514   ----> date
0455       ----> time
010        ----> temp
18006D9566 ----> id
你能帮忙吗,我不能把这个插入我的表格。我的代码有什么问题? 它只是给出了一个致命的错误。请给我指一下正确的方向。非常感谢您的帮助。多谢各位

编辑:

这是我的连接字符串:

Dim con As MySqlConnection = New MySqlConnection("Data Source=dev;Database=mydb;User ID=root;Password=mypass;")

尝试下面的方法,它将帮助您

        Dim filename As String = "C:\swipeimport\A1_20130513.txt"
        Dim Query As String
        Dim data As String = System.IO.File.ReadAllText(filename)
        Dim Loc, _date, time, temp, id As String
        Loc = data.Substring(0, 3)
        _date = data.Substring(3, 8)
        time = data.Substring(11, 4)
        temp = data.Substring(15, 3)
        id = data.Substring(18, 9)
        Query = "INSERT INTO tbl_entrance_swipe VALUES ('" + Loc + "','" + _date + "','" + time + "','" + temp + "','" + id + "')"
        Dim con As MySqlConnection = New MySqlConnection("Data Source=dev;Database=mydb;User ID=root;Password=mypass;")
        Try
            con.Open()
            Dim sql As MySqlCommand = New MySqlCommand(Query, con)
            sql.ExecuteNonQuery()
            MsgBox("Record is Successfully Inserted")
            con.Close()
        Catch ex As Exception
            con.Close()
            MsgBox("Record is not Inserted" + ex.Message)
        End Try

它还可以帮助人们查看您的连接字符串如果我将文本行存储为列表,性能是否明智?然后执行子字符串?它不会在我的文本文件中插入所有行。它只插入第一行…我必须对所有行重复吗?我应该怎么做才能在所有行中重复?我已将文本行存储为列表,这是否符合性能要求?