¿Cómo puedo lograr esto en SQL Transact.mesa Alter continuación, actualice
Quiero añadir nueva columna a la tabla existente y luego actualizarlo con algunos valores. ¿Es posible hacerlo en un script sql o debería usar scripts separados?
Aquí es un código de muestras
ALTER TABLE my_table ADD my_new_column bit NULL;
UPDATE my_table SET my_new_column = 0;
sé que estoy haciendo escribiendo mientras que la columna todavía no existe así que por eso estas dos líneas no están funcionando. Pero, ¿cómo lograr esto en un solo script, es decir, utilizar algún retraso o cómo estar seguro de que se creó la columna y luego escribir datos en él?
que utilizar si existe con SELECT de la tabla pero no funciona.
gracias
¿Qué ocurre si quiero actualizar varios campos con valores diferentes de 0, como 1? Intenté esta consulta, funciona bien, pero igual quiero usar la actualización después. – Vlad
Puede agregar varias columnas y restricciones predeterminadas de la misma manera. Aparte de que a menudo es mejor hacer DDL en un lote diferente de LMD para evitar problemas de análisis (ya sea mediante la adición de 'GO' entre los estados o por el uso de' EXEC' dependiendo del contexto que tiene que hacer esto) –
Wow gracias por el Consejo. Sí DDL debe separarse de DML, siempre. En este caso, necesitaba un script simple para terminar una tarea simple. De todas formas he utilizado esta respuesta aquí con instrucción GO y funcionó como esperaba http://stackoverflow.com/questions/1293638/sql-alter-table-then-modify-values – Vlad