valor por defecto en nueva columna

17/08/2005 - 15:48 por ajpb | Informe spam
Que tal,

Luego de hacer

ALTER TABLE MiTabla
ADD NuevaColumna int DEFAULT 0

Al revisar la tabla MiTabla los valores para NuevaColumna son NULL para
todos los registros anteriores a su creacion. Porque no funciona el DEFAULT
0 en este caso? y como haria para que a aquellos registros antes de la
inclusion de la nueva columna los ponga en 0 y no en NULL??

Saludos y gracias

Preguntas similare

Leer las respuestas

#1 Maxi
17/08/2005 - 16:03 | Informe spam
Hola, vas a tener que hacer un Update

Update tutabla set columna=0 where columna is null


Salu2
Maxi


"ajpb" escribió en el mensaje
news:
Que tal,

Luego de hacer

ALTER TABLE MiTabla
ADD NuevaColumna int DEFAULT 0

Al revisar la tabla MiTabla los valores para NuevaColumna son NULL para
todos los registros anteriores a su creacion. Porque no funciona el
DEFAULT
0 en este caso? y como haria para que a aquellos registros antes de la
inclusion de la nueva columna los ponga en 0 y no en NULL??

Saludos y gracias


Respuesta Responder a este mensaje
#2 Isaias
17/08/2005 - 16:08 | Informe spam
Bueno, si ya existian registros y estas agregando una nueva columna con
DEFAULT 0, deberas actualizar aquellos registros que ya existian.

UPDATE MiTabla SET NuevaColumna = 0 WHERE NuevaColumna IS NULL

Para los subsiguientes INSERTS, asegurade de colocar la palabra DEFAULT para
estas columna cuando no se especifique un valor.
Respuesta Responder a este mensaje
#3 Alejandro Mesa
17/08/2005 - 16:18 | Informe spam
Debes añadir a la restriccion la extension "with values" para que sql server
ponga ese valor en la nueva columna.

Ejemplo:

create table t1 (
c1 int not null identity unique
)
go

insert into t1 default values
insert into t1 default values
insert into t1 default values
go

alter table t1
add c2 int constraint df_c2 default(0) with values
go

select * from t1
go

drop table t1
go


AMB


"ajpb" wrote:

Que tal,

Luego de hacer

ALTER TABLE MiTabla
ADD NuevaColumna int DEFAULT 0

Al revisar la tabla MiTabla los valores para NuevaColumna son NULL para
todos los registros anteriores a su creacion. Porque no funciona el DEFAULT
0 en este caso? y como haria para que a aquellos registros antes de la
inclusion de la nueva columna los ponga en 0 y no en NULL??

Saludos y gracias


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida