Je suis débutant en SQL, et je n'arrive pas à trouver la requête qui me permet de désactiver l'option "not null" d'un champs.
merci de m'aider:
Je suis débutant en SQL, et je n'arrive pas à trouver la requête qui me permet de désactiver l'option "not null" d'un champs.
merci de m'aider:
On ne peux le faire avec un alter table... il faut passer par les tables systemes d'interbase.
Et donc c'est à utiliser avec précaution surtout s'il sagit d'une colonne indexée, ou clé étrangère etc...
Pour que NOM_COLONNE accepte d'être null :
Pour que NOM_COLONNE n'accepte pas d'être null :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 update RDB$RELATION_FIELDS set RDB$NULL_FLAG = NULL where (RDB$FIELD_NAME = 'NOM_COLONNE') and (RDB$RELATION_NAME = 'NOM_TABLE')
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 update RDB$RELATION_FIELDS set RDB$NULL_FLAG = 1 where (RDB$FIELD_NAME = 'NOM_COLONNE') and (RDB$RELATION_NAME = 'NOM_TABLE')
merci encore, cette requête, j'aurais pas pu l'inventer.
SUPER ce forum !
ta requete a bien ete acceptée, mous quand je vais voir la table sous IBconsole, rien ne semble changé, mes champs sont toujours a not null !
![]()
![]()
1-Tu as quel version d'interbase
2-Tu n'as pas eut de messages d'erreur lors de l'update ?
3-Tu as bien fait commit de l'update ?
j'ai interbase 6
je n'ai pas de message d'erreur lors de l'envoi de requête
j'ai bien fait commit
![]()
![]()
bizarre non ?, ne devrais-je pas detruire mes colonnes et les recréer ?
Ces colonnes ne sont pas liés à d'autres objets ? (Index, clé etrangères etc ??)
Sinon détruit et recrée tes colonnes (s'il n'y a pas de données dedans sinon renomme ta colonne, crée la nouvelle colonne, copie dedans les données puis détruit la colonne renommée)
Partager