Comment ajouter une contrainte non nulle sur une colonne contenant des valeurs nulles
J'ai une table avec une colonne qui contient quelques valeurs null. Je veux ajouter un NOT NULL
contrainte sur la colonne sans la mise à jour de l'existant, les valeurs null à une valeur non nulle. Je veux garder les valeurs null et vérifier pour les futures lignes qu'elles contiennent un pas null, la valeur de cette colonne. Est-ce possible? Comment?
source d'informationauteur Rachcha
Vous devez vous connecter pour publier un commentaire.
Vous pouvez ajouter un non validées de la contrainte, il ne sera pas regarder les lignes existantes, mais il sera vérifié pour les nouveaux ou mis à jour les lignes.
Juste être conscient que vous ne serez pas en mesure de mettre à jour une ligne existante, sauf si elle satisfait à la contrainte.
Aussi, être conscient de l'inconvénient que l'optimiseur ne sera pas en mesure de prendre avantage de cette contrainte dans ses plans, il faut supposer que certaines lignes peuvent encore avoir une valeur null.
Hammad:
Je suis face au problème et de le résoudre comme suit:
Alter table thr_empl_info modifier THR_EM_DESIGNATION_ID pas null
ALTER TABLE nom_table
ENSEMBLE column_name = '0'
OÙ column_name EST NULLE;
ALTER TABLE nom_table
MODIFIER la COLONNE(nom_colonne NOMBRE CONTRAINTE constraint_identifier PAS NULL);
C'est bien sûr en supposant que votre colonne est un nombre, mais c'est la même chose, vraiment, vous serait-il suffit de changer le '0' à une valeur par défaut qui n'est pas nulle.