drop - Cómo agregar una restricción no nula a la columna existente en MySQL5.1
drop constraint sql server (2)
Pruebe esto, sabrá la diferencia entre cambiar y modificar,
ALTER TABLE table_name CHANGE curr_column_name new_column_name new_column_datatype [constrints]
ALTER TABLE table_name MODIFY column_name new_column_datatype [constraints]
-
MODIFYoperaciónMODIFYpara cambiar, pero no es posible invertir. - Puede cambiar el nombre y el tipo de datos de la columna en particular usando
CHANGE. - Puede modificar el tipo de datos de columna particular usando
MODIFY. No puede cambiar el nombre de la columna usando esta declaración.
Espero, lo expliqué bien en detalle.
Tengo un nombre de tabla llamado "Persona" con los siguientes nombres de columna
P_Id(int),
LastName(varchar),
FirstName (varchar).
Olvidé dar restricción NOT NULL a P_Id .
Ahora probé con la siguiente consulta para agregar restricción NOT NULL a la columna existente llamada P_Id ,
1. ALTER TABLE Person MODIFY (P_Id NOT NULL);
2. ALTER TABLE Person ADD CONSTRAINT NOT NULL NOT NULL (P_Id);
Estoy recibiendo un error de sintaxis ...
Solo use una consulta ALTER TABLE... MODIFY... y agregue NOT NULL a su definición de columna existente. Por ejemplo:
ALTER TABLE Person MODIFY P_Id INT(11) NOT NULL;
Una advertencia: debe especificar la definición de columna completa nuevamente cuando se utiliza una consulta MODIFY . Si su columna tiene, por ejemplo, un valor DEFAULT o un comentario de columna, debe especificarlo en la instrucción MODIFY junto con el tipo de datos y NOT NULL , o se perderá. La práctica más segura para evitar estos contratiempos es copiar la definición de columna del resultado de una consulta SHOW CREATE TABLE YourTable , modificarla para incluir la restricción NOT NULL y pegarla en su consulta ALTER TABLE... MODIFY...