bueno pues yo estoy usando sql server y encontré un comando que regresa el ultimo registro insertado.
Cita: comm.CommandText = "select scope_identity()"
nopreg_ = comm.ExecuteScalar
en algunas otras ocasiones lo he encontrado solo como una instrucción reducida a identity() lo interesante es que si me funciona. bueno no lo mencionas pero me imagina que el problema es que el campo llave es un autonumerico se incrementa solo y es por eso que no se sabe el numero de registro insertado, bueno espero ser de ayuda.