SQL - Autoincrement en SQL - sever

   
Vista:

Autoincrement en SQL - sever

Publicado por Rodrigo Candido (3 intervenciones) el 23/01/2013 15:56:58
Hola a todos,

Bueno mi duda de hoy es la seguiente:

Como estoy estudiando un libro de SQL que tiene sus ejemplos en MySQL y como estoy utilizando SQL Sever para ejecutarlos, hay muchisimos query que no me van, el ultimo es este;

Tengo una tabla person que tiene valor smallint, pero ahora tengo que utilizar el codigo
Alter Table person ALTER COLUMN person_id (aqui en el ejemplo pone autoincrement, pero al utilizar SQL Sever no me deja.

Mi pregunta es, cual es el comando para que en SQL Sever la tabla se incremente por si sola cuando añada una persona?

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

Autoincrement en SQL - sever

Publicado por Libras (10 intervenciones) el 23/01/2013 16:30:49
identity es la funcion para autoincrementar :)
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

Autoincrement en SQL - sever

Publicado por Rodrigo Candido (3 intervenciones) el 23/01/2013 17:11:44
Hola..

He intentado con identity;

ALTER TABLE person ALTER COLUMN person_id IDENTIFY;


pero me sale este mensage:

Mens. 2715, Nivel 16, Estado 6, Línea 1
Columna, parámetro o variable nº 10: no se encuentra el tipo de datos IDENTIFY

Lo siento..

Gracias
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

Autoincrement en SQL - sever

Publicado por MonoDBA (1 intervención) el 23/01/2013 17:40:45
Hola en SQL Server no es posible aplicar un alter para convertir el campo de una tabla en autoincremental, al menos no directamente.

Lo que se hace en SQL es definir el campo desde la creación de la tabla, esto de la siguiente manera.

ejemplo:

create table temp_prueba
( id smallint IDENTITY(1,1) not null,
nombre varchar(10)
)

En el ejemplo el campo "id" de la tabla temp_prueba, es una campo autoincremental, el cual aumenta de uno en uno.

Sintaxis:

IDENTITY(inicio, incremento)
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

Autoincrement en SQL - sever

Publicado por Rodrigo Candido (3 intervenciones) el 23/01/2013 17:55:04
Graciaaaassss...


Me funciona...que guay....!!!


Muchas gracias, es que aun tengo problema de MySQL y SQL server, poco a poco., sabes de algun sitio donde puedo coger este tipo de infromacion? O sea los equivalentes de uno por el otro


Pero aun asi, puedo segui trabajando, muchas gracias.
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

Autoincrement en SQL - sever

Publicado por Marco Antonio Llapapasca Montes (1 intervención) el 23/01/2013 18:52:00
HOLA A TODOS..
Te recomiendo utilizar es proceso…
Me ayuda bastante con respecto a generar ID de una tabla.
1
2
3
4
5
6
7
8
9
10
11
12
DECLARE @ID_AUXILIAR INT
IF(SELECT COUNT(*) FROM  TABLA )= 0
	BEGIN
		SET @ID_AUXILIAR = 1
	END
ELSE
	BEGIN
		DECLARE @ID_MAX INT
		SET @ID_MAX=(SELECT MAX(NU_ID)
						FROM TABLA  )
		SET @ID_AUXILIAR = @ID_MAX + 1
END

EL @ID_AUXILIAR es el que insertas en tu tablas , Este es un pequeño ejemplo que lo puedes modifcar porque algunos ID de la tablas estan conformadas entre numeros y caracteres…
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Autoincrement en SQL - sever

Publicado por Michael (1 intervención) el 11/06/2014 18:36:32
EXCELENTE AMIGO!! ME SIRVIO BASTANTE
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

Autoincrement en SQL - sever

Publicado por Pedro J. (1 intervención) el 27/08/2015 10:53:29
También lo podrías hacer así, que sería algo más eficiente (sólo haces un SELECT) y además con menos código.

DECLARE @ID_AUXILIAR INT

SELECT ID_AUXILIAR=max(NU_ID) FROM TABLA

SET ID_AUXILIAR = COALESCE(ID_AUXILIAR+1 , 1)
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

Autoincrement en SQL - sever

Publicado por Oscar lord_angel3@hotmail.com (1 intervención) el 19/07/2014 13:37:40
En mysql es mucho mas fácil crea tu modelo en worbench y allí define lo como autoincrementable :)
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