mysql - 如何将类型 'gupta.sqlbase.data.sqlbaseconnection' 的对象转换为类型 'mysql.data.mysqlclient.mysqlconnection'

标签 mysql vb.net sqlbase

我在 SQLBase 中选择了一些值,我想将它们导入到 MySQL 中。但正如我的标题所示,问题仍然存在。

场景是这样的: 我必须只选择 SQLBase 中的一些字段及其值并将它们插入 MySQL 中。如何将sqlbase数据导入mysql?

这是我的代码:

       Dim conn As New SQLBaseConnection("DB=Source;SERVER=SERVER1;UID=SYSADM;PWD=password;INI=C:\Program Files\Gupta\SQLBase901\sql.ini")
    Try
        conn.Open()
        Dim adaptor As New SQLBaseDataAdapter
        Dim ds As New DataSet
        adaptor.SelectCommand() = New SQLBaseCommand("SELECT * FROM PERSON WHERE TYPE='E'", conn)
        ds = New DataSet()
        adaptor.Fill(ds, "ID")
        Dim datTable As DataTable = ds.Tables("ID")

        Dim id, type, name, proximity, department, section, costCenter, lastName, firstName, midName, company As String

        If datTable.Rows.Count > 0 Then

            For i As Integer = 0 To datTable.Rows.Count - 1

                id = datTable.Rows(i)(0)
                type = datTable.Rows(i)(1)
                name = datTable.Rows(i)(8)
                proximity = datTable.Rows(i)(33)
                department = datTable.Rows(i)(51)
                section = datTable.Rows(i)(58)
                costCenter = datTable.Rows(i)(55)
                firstName = datTable.Rows(i)(3)
                midName = datTable.Rows(i)(4)
                lastName = datTable.Rows(i)(5)
                company = datTable.Rows(i)(50)

                Insert201(id, type, name, proximity, department, section, costCenter, lastName, firstName, midName, company, conn)
                i += 1
                Application.DoEvents()

            Next

        End If
        conn.Close()
    Catch ex As Exception
        'TextBox1.Text = ex.Message
    End Try

然后在另一个子过程中我称之为:

    Public Sub Insert201(ByVal id, ByVal type, ByVal name, ByVal proximity, ByVal department, ByVal section, ByVal costCenter, ByVal lastName, ByVal firstName, ByVal midName, ByVal company, ByVal conn)

    Dim Query As String

    Query = "INSERT INTO tbl_201 VALUES ('" + id + "','" + type + "','" + name + "','" + proximity + "','" + department + "', '" + section + "', '" + costCenter + "','" + lastName + "', '" + firstName + "', '" + midName + "','" + company + "')"

    Try
        conn.Open()
        Dim sql As MySqlCommand = New MySqlCommand(Query, conn)
        sql.ExecuteNonQuery()
        'MsgBox("Record is Successfully Inserted")
        conn.Close()
    Catch ex As Exception
        conn.Close()
        MsgBox("Record is not Inserted" + ex.Message)
    End Try

End Sub

最佳答案

据我从您的问题中可以看出,您不需要按照您的要求进行操作。将SQLBaseConnection 转换为MySQLConnection 不会有帮助(据我所知甚至不可能)。您需要建立一个 MySQLConnection 类型的新连接来连接到您的 MySQL 数据库,然后将该连接对象提供给您的 Insert201 方法。如果您在建立第二个连接对象时需要任何帮助,请咨询this StackOverflow question and answer .

关于mysql - 如何将类型 'gupta.sqlbase.data.sqlbaseconnection' 的对象转换为类型 'mysql.data.mysqlclient.mysqlconnection',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16704385/

相关文章:

php - 如何使用 MYSQL GROUP_CONCAT 获取两个变量?

mysql - 需要有关在 mysql 中编写复合语句的帮助

mysql - 如何在 MySQL 中移动列值?

asp.net - Application_Error被忽略?

vb.net加载数据表到datagridview

SQL 按临时 "AS"列排序

SQL-Select 组合时会出现错误

c# - 可以更改 NHibernate 的格式来制定绑定(bind)变量吗?

php - CakePHP 数学计算领域?

vb.net - 从 PC 获取唯一的硬件 ID