如何获取最后插入的 id 以将其插入另一个 table?

How to get the last inserted id to insert it to another table?

我的问题是如何获取最后插入的 ID,我想使用该 ID 然后将其插入另一个 table,因为我有另一个 table.[=12= 的外键]

Dim insertquery As String = "insert into IndustrialEstablishmentFood_tbl(NameOfEstablishment,Address,EmailAddress,CEO_President,GeneralManager,PollutionControlOfficer,NatureOfBusiness,ContactNumber,NameOfAccreditedWasteHauler,ControlNumber,BrgyClearanceWithCTC,DTI_SEC,ECC,PTO,DP,BFAD,AccreditedWasteHauler,SelfMonitoringReport) values (@NameOfEstablishment,@Address,@EmailAddress,@CEOPresident,@GeneralManager,@PollutionControlOfficer,@NatureOfBusiness,@ContactNumber,@NameOfAccreditedWasteHauler,@ControlNumber,@BrgyClearance,@DTISEC,@ECC,@PTO,@DP,@BFAD,@AccreditedWasteHauler,@SMR)" &
Dim cmd As New SqlCommand(insertquery, connection)
cmd.Parameters.AddWithValue("@NameOfEstablishment", NameOfEstablishment.Text)
cmd.Parameters.AddWithValue("@Address", Address.Text)
cmd.Parameters.AddWithValue("@EmailAddress", EmailAddress.Text)
cmd.Parameters.AddWithValue("@CEOPresident", CEOPresident.Text)
cmd.Parameters.AddWithValue("@GeneralManager", GeneralManager.Text)
cmd.Parameters.AddWithValue("@PollutionControlOfficer", PollutionControlOfficer.Text)
cmd.Parameters.AddWithValue("@NatureOfBusiness", NatureOfBusiness.Text)
cmd.Parameters.AddWithValue("@ContactNumber", ContactNumber.Text)
cmd.Parameters.AddWithValue("@NameOfAccreditedWasteHauler", NameOfAccreditedWasteHauler.Text)
cmd.Parameters.AddWithValue("@ControlNumber", ControlNumber.Text)
cmd.Parameters.AddWithValue("@BrgyClearance", BrgyClearance.Text)
cmd.Parameters.AddWithValue("@DTISEC", DTISEC.Text)
cmd.Parameters.AddWithValue("@ECC", ECC.Text)
cmd.Parameters.AddWithValue("@PTO", PTO.Text)
cmd.Parameters.AddWithValue("@DP", DP.Text)
cmd.Parameters.AddWithValue("@BFAD", BFAD.Text)
cmd.Parameters.AddWithValue("@AccreditedWasteHauler", AccreditedWasteHauler.Text)
cmd.Parameters.AddWithValue("@SMR", SMR.Text)
cmd.ExecuteNonQuery()
MessageBox.Show("Successfully added!", "Confirmation", MessageBoxButtons.OK, MessageBoxIcon.Information)
clear() 'clear all fields after inserted to database

选项 1(对于基于整数的 ID)

Dim LASTID
Dim selectquery As String = "SELECT MAX(WHATYOUNAMEYOURID) FROM IndustrialEstablishmentFood_tbl GROUP BY WHATYOUNAMEYOURID" 

Dim cmd As New SqlCommand(selectquery , connection)
cmd.CommandType = CommandType.Text
LASTID = cmd.ExecuteScalar


MessageBox.Show("ID Found!", LASTID, MessageBoxButtons.OK, MessageBoxIcon.Information)

选项 2(最佳且与 GUID 一起使用)- 在对 return @@IDENTITY

的查询中创建一个 return