Tu problemas mas bien viene porque estas mezclando un acceso a datos con sql y oledb.. recuerda que hay que definir cual vas a usar..
Te quedaría así:
Cita: Dim orden As New SqlClient.SqlCommand(q, Conexion)
orden.Parameters.Add(New SqlParameter("@idpais", SqlDbType.Int))
orden.Parameters.("@idpais").Value = idpais
orden.Parameters.Add(New SqlParameter("@nombre", SqlDbType.VarChar, 20))
orden.Parameters.("@nombre").Value = nombre
Conexion.Open()
orden.ExecuteNonQuery()
Conexion.Close()
Pruebalo y nos avisas si te funcionó
Salu2