获取记录的id添加到mysql db

时间:2013-11-24 23:26:30

标签: mysql database vb.net vb.net-2010

希望有人可以帮我解决这个问题。

我已经创建了一个链接到mysql数据库的应用程序。 我现在正在将远程主机的详细信息写入数据库。 我也在保存远程凭据,但是在另一个表中。 我在'credentials'表中有一个名为'hosts_linked_id'的colomn,我希望在'hosts'表中包含父记录的id。

到目前为止,这是我的代码......

    SQLConnection.ConnectionString = connectionstring
    Try
        If SQLConnection.State = ConnectionState.Closed Then
            SQLConnection.Open()
            Dim SQLStatement As String = "INSERT INTO hosts(name, description, host, type, port) VALUES('" & txtname.Text & "','" & txtdescription.Text & "','" & txthost.Text & "','" & cmbtype.Text & "','" & txtport.Text & "')"
            SaveData(SQLStatement)

            SQLConnection.Open()
            SQLStatement = "INSERT INTO credentials(hosts_linked_id, username, password, type) VALUES('" & txtname.Text & "','" & txtusername.Text & "','" & encryptedpassword & "','" & cmbtype.Text & "')"
            SaveData(SQLStatement)

        Else
            SQLConnection.Close()

        End If

此外,这是'SaveData'功能......

Public Sub SaveData(ByRef SQLStatement As String)
    Dim cmd As MySqlCommand = New MySqlCommand

    With cmd
        .CommandText = SQLStatement
        .CommandType = CommandType.Text
        .Connection = SQLConnection
        .ExecuteNonQuery()
    End With
    SQLConnection.Close()
    MsgBox("Host has been added")
    txtname.Text = ""
    txtdescription.Text = ""
    txthost.Text = ""
    cmbtype.Text = ""
    txtport.Text = ""
End Sub

我需要做的是获取当我的第一个'INSERT'语句执行到变量时创建的记录的id,这样我可以在执行第二个'INSERT'语句时将其插入'credentials'表中。 / p>

我已经用谷歌搜索了这个并尝试了几种不同的方法,但都没有成功。

任何人都可以帮我指出正确的方向吗?

提前致谢!!

TL; DR:需要获取执行insert语句时添加的mysql记录的ID并将其放入变量

0 个答案:

没有答案