Muchas gracias a quienes me ayudaron y se tomaron un minuto de su tiempo para responder.
He aquí el código implementado que me funciono.
Código vb:
Ver originalDim querySelectOr As String = "SELECT id_or FROM ord WHERE nombre_or = @nombreor LIMIT 1"
Using cmd As New MySqlCommand(querySelectOr, cn)
cmd.Transaction = myTrans
cmd.Parameters.AddWithValue("@nombreor", txtOr.Text)
'AQUI HAY QUE SABER QUE DEVUELVE EL QUERY SI EL QUERY DEVUELVE ID ENTONCES USA EL ID QUE DEVUELVE
Dim reader As MySqlDataReader
reader = cmd.ExecuteReader()
While reader.Read()
id_ord = reader.GetInt32(0)
End While
reader.Close()
End Using
id_ord2 = id_ord.ToString()
'Comparamos si ID_ORD2 esta vació, es nulo o es igual a 0 por el motivo que cuando se hace la consulta
' y nombre_or no es igual a txtor, lo que devuelve es 0, entonces se colocan 2 condiciones.
If String.IsNullOrEmpty(id_ord2) Or id_ord2 = 0 Then
Dim queryOr As String = "INSERT INTO ord (nombre_or) " & _
"VALUES (@nombreor)" & _
";SELECT LAST_INSERT_ID();"
id_ord = 0
Using cmd As New MySqlCommand(queryOr, cn)
cmd.Transaction = myTrans
cmd.Parameters.AddWithValue("@nombreor", txtOr.Text)
id_ord = Convert.ToInt32(cmd.ExecuteScalar())
End Using
End If
Gracias gente. Buenas noches.