Ir al contenido principal

Obtener el Valor Autoincrementado en MySQL/MariaDB


Que tal, este es mi primer post sobre tema de programacion, al menos en el area de base de datos.

La intension es tener una anotacion mas que un post tutorial, pero espero que a alguien le sirva como referencia.

Bien, basicamente es una traduccion de una de las paginas de desarrollo de MySQL, la cual pueden encontrar en MySQL Connector /ODBC Developer Guide :: Obtaining Auto-Increment Values

Obtener el valor autoincrementado


Obtener el valor de una columna que utiliza AUTO_INCREMENT posterior a una sentencia INSERT se puede lograr en diferentes formas. Para obtener el valor inmediatamente posterior al INSERT, se puede usar una sentencia SELECT con la funcion LAST_INSERT_ID

Por ejemplo, usando Connector/ODBC, puedes ejecutar dos sentencias por separado, la sentencia INSERT y SELECT para obtener el valor de incremento, es decir:

INSERT INTO tbl (auto, text) VALUES(NULL, 'Este es un texto');
SELECT LAST_INSERT_ID();


Si no se requiere el valor en tu aplicacion al realizar el INSERT, pero si lo requieres para como parte de otro INSERT (por ejemplo una tabla de detalles), el proceso completo seria:


INSERT INTO tbl (auto, text) VALUES (NULL, 'Este es un texto');
INSERT INTO tbl2(di, text) VALUES(LAST_INSERT_ID(), 'Detalle del texto');


La funcion puede ser utilizada tanto en procedimientos almacenados (STORE PROCEDURES), funciones de usuarios y triggers.

Esperando que sea de ayuda a mas de uno, nos leemos en el proximo post.

Saludos

Comentarios

Entradas más populares de este blog

Como leer/visualizar archivos utmp, wtmp y btmp en Linux

Lectores, les paso este "Como" de linux, algo que debe ser usado por cualquier sysadmin de Linux. Esperando aportar conocimiento, aqui les dejo. Introducción. En sistemas operativos Linux/Unix todo es registrado en algun lado (los conocidos logs). La mayoria de registros del sistema se almacenan en el directorio /var/log . El directorio contiene registros relacionados a distintos servicios y/o aplicaciones. En este directorio tenemos algunos archivos como utmp , wtmp y btmp . Estos archivos contienen todo el detalle de registro de inicio (login) y termino (logout) de sesiones de usuarios ya sea local, sistemas remoto, como estado en el sistema, tiempo en linea, etc. Informacion sobre los archivos utmp : te mostrara informacion completa del acceso de usuarios, la terminal que usa, termino de sesion, eventos del sistema y el estado actual del mismo, etc. wtmp : contiene el historio del archivo utmp btmp : registros solo intentos fallidos de sesion. Como no ...

Como montar particiones LVM en Linux

Como están lectores, reportandome después de varios meses fuera. Hace un par de días vi un howto que me gusto y quiero compartir. Nota: lo siguiente es una traducción, el original lo pueden ver el siguiente link: How to mount an LVM partition on Linux Introducción LVM es una herramienta de administración de volúmenes lógicos (particiones) la cual te permite administrar el espacio de disco usando la connotación de volúmenes lógicos y grupo de volúmenes. El mayor beneficio de usar LVM sobre las particiones clásicas es la flexibilidad en la asignación de almacenamiento para usuarios y aplicaciones sin verse limitado por el tamaño de los discos individuales. En LVM, el almacenamiento físico, en el cual se crean los volúmenes lógicos, son particiones tradicionales (/dev/sda1, /dev/sda2). Estas particiones deben ser marcadas como "volúmenes físicos" y etiquetadas como "Linux LVM", esto para ser usadas en LVM. Como no montar Unas vez que las particiones h...

Resetear password de NextCloud

Estimados, recienmente he estado trabajando en la administración de archivos para una institución gubernamental, por lo que comenzamos a trabajar con NextCloud . Para mas información de la plataforma consulten la documentación Como suele pasar en muchas ocasiones, es probable que podamos olvidar la password del usuario admin o que quien instaló no haya previsto el anotarla y se olvide. Para realizar el reset o cambiar la password del administrador u otro usuario se puede realizar de la siguiente manera. 1. Click en el link de reset password en la pantalla de login, esta link aparece al intentar la primera vez en el acceso y falla. Este metodo solo funcionara si se definio un correo electrónico para el usuario, por lo que Nextcloud te enviara una correo con las instrucciones. 2. Solicitar a otro usuario que tenga permisos de administrador, para que te resetee el password. Si lo anterior no funciona o no esta en el escenario en que estas, puedes resetear el password tenie...