MySQL - Hacer un insert AutoIncrementable

 
Vista:
sin imagen de perfil

Hacer un insert AutoIncrementable

Publicado por Angel (4 intervenciones) el 03/01/2014 19:04:31
Que tal Gente les agradeceria su valiosa ayuda.
la verdad soy novato en MYSQL y necesito hacer algo que seguramente es sencillo pero no lo he conseguido. La consulta que intento es hacer un insert de un campo pero necesito incrementarle 1 cada vez que se realize el insert, lamentablemente esta prohibido manipular la estructura ya que de ser asi bastara con que fuera incrementable

he intentado un sin fin de consultas pero la ultima que intente y tampoco me funciono fue esta.

SELECT @ServicioID:=LAST_INSERT_ID(Servicio) FROM Servicios;
INSERT INTO Servicios(`Servicio`) VALUES (@ServicioID+1);

y me funciona sin problema, el problema que tengo es que si por ejemplo la tabla se encuentra vacia, como comprenderan no encuentra ningun dato para tomar por referencia y no funciona la consulta, se me ocurre hacer algun IF para evaluar si existe o no algo antes pero no se muy bien como hacerlo.

alguien que me ayude por favor, estoy desesperado, de antemano muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Hacer un insert AutoIncrementable

Publicado por Jose Manuel (7 intervenciones) el 04/01/2014 21:59:05
Hola:

No me queda muy claro lo que te funciona o no, así que te pongo un ejemplo de IF con NULL; tal vez este ejemplo te oriente:

1
2
3
4
5
SELECT MAX(primero) INTO @valor FROM testeo;
 
SET @valor = IF(@valor IS NULL, 0, @valor + 1);
 
SELECT @valor;


Cuéntanos que si te funciona. Felices fiestas.

José Manuel
=========================
http://www.orbisapientia.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Hacer un insert AutoIncrementable

Publicado por Eugenio Diaz (1 intervención) el 18/04/2014 00:15:01
Buenas tardes a todos!

Mi problema es muy similar al del compañero. pero no seo como hacerle necesito crear un query Insert que haga el auto incremento en una de las columnas. con MSSQL era de la siguiente manera

1
2
3
4
5
6
7
8
9
10
INSERT INTO tabla1
  (
    RegistorID,
    Nombre
  )
VALUES
  (
    (SELECT MAX(RegistroID) + 1  as RegistroIDMasUno FROM tabla1),
    'EL NOMBRE DEL REGISTRO'
   )



Pueden orientarme si esto es posible de hacer o de que otra manera se podría realizar esta operacion
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar