PDA

Ver la Versión Completa : Modificar campo autonumerico


Carlex
28-01-2005, 18:38:42
Muy buenas, mi duda es la siguiente, si existe alguna forma de modificar el valor d un campo autonumerico, esto me servira para una reindexacion q debere procesar, son al rededor d 900 datos q debere modificar y no puedo parar el motor del SQL, me gustaria alguna idea o un query talvez a fin d acortar el tiempo para esta tarea, muchisimas gracias d antemano

Carlosguiland
28-01-2005, 18:47:14
Hola, Lo que pudiera recomendarte, seria que modificaras ls estructura de las tablas, colocando el campo index, al cual hacer referencia, con el comando
"on update cascade", esto claro si la integridad de los datos es buena
Saludos...

__hector
31-01-2005, 15:28:46
Puedes modificar el contenido de un campo autonumerico, igual como lo harias con cualquier otro campo. Solo tienes que activar la propiedad IDENTITY_INSERT en la tabla en cuestion, y ejecutar la actualizacion.

Un breve ejemplo del Books Online:


SET IDENTITY_INSERT products ON
GO

-- Attempt to insert an explicit ID value of 3
INSERT INTO products (id, product) VALUES(3, 'garden shovel').
GO

moNTeZIon
07-09-2006, 17:06:47
Buenas,
Estaba interesado en la misma acción que nuestro amigo (MODIFICAR un campo autonumerico), y debo decir que esta solución no es correcta, o quizá le falte alguna parte para estar completa. Me explico.
Con el "SET IDENTITY_INSERT products ON" es cierto que podemos hacer un INSERT como "INSERT INTO products (id, product) VALUES(3, 'garden shovel')", pero lo cierto es que aí no se está modificando nada sino que se está haciendo una alta. Para modificar se utiliza UPDATE.
Entonces, estableciendo "SET IDENTITY_INSERT products ON" se consiguen hacer inserts especificanto al valor del campo autonumérico, aunque los updates de ese campo siguen cascando. Pruebenlo y veran.
Así pues... hay forma de updatear un campo autonumérico en SQL Server?
Gracias.
Saludos.