Précédent   Forum des professionnels en informatique > Bases de données > Sybase > Adaptive Server Enterprise
Adaptive Server Enterprise Forum d'entraide concernant Sybase Adaptive Server Enterprise, le dataserver phare de Sybase
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/05/2008, 15h45   #1
Invité de passage
 
Inscription : septembre 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 9
Points : 1
Points : 1
Par défaut Forcer à autoriser les valeurs nulles

Bonjour,

J'ai besoin de faire une modification dans une de mes tables ASE (version 11.9.2.9) pour forcer un champ à admettre les valeurs 'null'

J'ai testé un simple :

Code sql :
ALTER TABLE TEST MODIFY test NULL

et j'obtiens le message d'erreur :

Citation:
Server Message: Number 13925, Severity 10
Server 'DEV', Line 1:
Warning: ALTER TABLE operation did not affect column 'test'.
Server Message: Number 13905, Severity 16
Server 'DEV', Line 1:
Warning: no columns to drop, add or modify. ALTER TABLE 'TEST' was aborted.
Connaissez vous une astuce pour contourner ce problème?

Moi pour l'instant je ne voit que celle là :

Code sql :
1
2
3
 
ALTER TABLE TEST MODIFY test char(11) NULL
ALTER TABLE TEST MODIFY test char(10) NULL

Mais comme je devrait au final faire cette modification de table sur quelques milliers de lignes il serait plus joli de ne coder qu'un seul alter table.

Merci pour vos réponses
David_Prog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2008, 19h52   #2
Membre à l'essai
 
Inscription : janvier 2008
Messages : 34
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 34
Points : 21
Points : 21
D'abbord, je suis Americain et j'espère que vous pardonnerez les erreurs. J'apprends encore le français.

Ce message signifie que la colonne permet déjà la NULL. Pouvez vous poste le résultat du sp_help?
denverdba est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2008, 09h12   #3
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
Attention - à ma connaissance "alter table modify" n'est pas supporté en 11.9.x.
Il y a peut-être une autre solution (hormis reconstruire la table) - je vais voir si j'ai le temps de trouver aujourd'hui...

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2008, 15h08   #4
Invité de passage
 
Inscription : septembre 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 9
Points : 1
Points : 1
D'abord merci pour ces reponses.

Donc en premier temps je suis sur que la colonne ne permet pas les valeurs nulles puisque c'est à cause de cette règle que je souhaite lui faire accepter des valeurs non nulles. Le message d'erreur c'est qu'il ne considère pas ma commande comme une demande de changement puisque je ne modifie ni le nom du champ, ni la taille, ni son type ...

Voici tout de même le résultat du sp_help :




En deuxième temps les ALTER TABLE MODIFY fonctionnent très bien (la solution de contournement que j'ai tout en bas de mon premier post fonctionne très bien) mais j'avoue que je ne suis pas sur d'avoir donné la bonne version de ASE utilisée, j'ai regardé sous Sybase Central dans Outils>Produit connectés... pour avoir la version (si il y a un autre moyen plus simple je suis preneur)


PS : tant que c'est pas du language SMS je ne tient pas trop compte des fautes de français
David_Prog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2008, 18h17   #5
Membre à l'essai
 
Inscription : janvier 2008
Messages : 34
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 34
Points : 21
Points : 21
Sp_help montre nulls=1. La colonne permet déjà la NULL!
denverdba est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 10h16   #6
Invité de passage
 
Inscription : septembre 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 9
Points : 1
Points : 1
Oups j'ai posté le sp_help d'une mauvaise version de ma table

Voici celle sur laquelle je travaille en ce moment :
David_Prog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 13h09   #7
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
Pour avoir la version d'ASE: select @@version

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 14h08   #8
Invité de passage
 
Inscription : septembre 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 9
Points : 1
Points : 1
Citation:
Envoyé par mpeppler Voir le message
Pour avoir la version d'ASE: select @@version

Michael
12.5.4
David_Prog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2008, 14h34   #9
Invité de passage
 
Inscription : septembre 2006
Messages : 9
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 9
Points : 1
Points : 1
Pas de nouvelles idées?
David_Prog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2008, 11h46   #10
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
J'ai testé ceci, qui a l'air de marcher

Code :
1
2
3
4
5
 
CREATE TABLE #t (c char(100) not null)
go
ALTER TABLE #t modify c char(100) null
go
Ceci sur un serveur 12.5.4 ESD 7

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/06/2008, 17h57   #11
Membre actif
 
Inscription : août 2007
Messages : 134
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 134
Points : 152
Points : 152
Le code qu'a posté Michael fonctionne aussi en 12.5.0.3 ESD 3
Roller est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h25.


 
 
 
 
Partenaires

Hébergement Web