希望有人可以帮我解决这个问题。
我已经创建了一个链接到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并将其放入变量