Acces natif sql serveur et NULL

Le
free
Bonjour

J'utilise l'acces natif avec sql serveur
J'ai une clé etrangere optionnelle dans une fiche (qui peut etre nulle)
Si je fait hraz sur la fiche, il semblerait que windev y mette 0 au lieu de
null, et du coup, sqlserveur rale sur les contraintes d'intégritées.

Auriez vous un avis dessus ?
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Firetox
Le #21208781
Bonjour

Si je fait hraz sur la fiche, il semblerait que windev y mette 0 au lieu
de null, et du coup, sqlserveur rale sur les contraintes d'intégritées.



le champs doit etre en numerique alors
le fait qu'on veuille gerer le null impose plusieurs contraintes

le null n'est pas une valeur pour le SQL (c'est absence de valeur)
or si vous mettez un numerique windev va y coller 0 mais 0 est une valeur
alors que null non

dans ce cas il faut mettre le champs en texte
on a donc soit une valeur 0 ...... 99999999999999 soit blanc "" chaine vide
qui representera le null

maintenant il faut que windev le prenne en compte en gerant les ordre H et
ne pas transmettre de valeur ou alors transmettre null sans guillement pas
comme une chaine mais ecrit null

bon dev
@+
free
Le #21209211
Bonjour

Merci pour la réponse
Il s'agit de clé étrangere, donc un poil délicat de passer en texte.

J'ai continuer a investiguer, semblerait qu'il faille aller cocher une
propriété null sur la rubrique.
Dans l'aide ca parle aussi de fichier.rubrique..null=vrai pour forcer le
null sur une rubrique.

Mais ce qui m'inquiete plus, c'est l'initialisation de tout ca .
1) db faite sur le serveur
2) création d'une analyse, import de la description des tables
3) aller manuellement coher cette propriété sur toutes les rubriques étant
clé étrangeres facultative
cette derniere étape me semble d'une folie monstrueuse des que la db possède
pas mal de table.



"Firetox" news:4b7ac3c1$0$6285$
Bonjour

Si je fait hraz sur la fiche, il semblerait que windev y mette 0 au lieu
de null, et du coup, sqlserveur rale sur les contraintes d'intégritées.



le champs doit etre en numerique alors
le fait qu'on veuille gerer le null impose plusieurs contraintes

le null n'est pas une valeur pour le SQL (c'est absence de valeur)
or si vous mettez un numerique windev va y coller 0 mais 0 est une valeur
alors que null non

dans ce cas il faut mettre le champs en texte
on a donc soit une valeur 0 ...... 99999999999999 soit blanc "" chaine
vide qui representera le null

maintenant il faut que windev le prenne en compte en gerant les ordre H et
ne pas transmettre de valeur ou alors transmettre null sans guillement pas
comme une chaine mais ecrit null

bon dev
@+




Firetox
Le #21209201
Bonour,

non pas la cle dans l'analyse
le champs de la fenetre a passé en texte


"free" news:4b7ad09c$0$9105$
Bonjour

Merci pour la réponse
Il s'agit de clé étrangere, donc un poil délicat de passer en texte.

J'ai continuer a investiguer, semblerait qu'il faille aller cocher une
propriété null sur la rubrique.
Dans l'aide ca parle aussi de fichier.rubrique..null=vrai pour forcer le
null sur une rubrique.

Mais ce qui m'inquiete plus, c'est l'initialisation de tout ca .
1) db faite sur le serveur
2) création d'une analyse, import de la description des tables
3) aller manuellement coher cette propriété sur toutes les rubriques étant
clé étrangeres facultative
cette derniere étape me semble d'une folie monstrueuse des que la db
possède pas mal de table.



"Firetox" news:4b7ac3c1$0$6285$
Bonjour

Si je fait hraz sur la fiche, il semblerait que windev y mette 0 au lieu
de null, et du coup, sqlserveur rale sur les contraintes d'intégritées.



le champs doit etre en numerique alors
le fait qu'on veuille gerer le null impose plusieurs contraintes

le null n'est pas une valeur pour le SQL (c'est absence de valeur)
or si vous mettez un numerique windev va y coller 0 mais 0 est une valeur
alors que null non

dans ce cas il faut mettre le champs en texte
on a donc soit une valeur 0 ...... 99999999999999 soit blanc "" chaine
vide qui representera le null

maintenant il faut que windev le prenne en compte en gerant les ordre H
et ne pas transmettre de valeur ou alors transmettre null sans guillement
pas comme une chaine mais ecrit null

bon dev
@+








patrice
Le #21212651
La je parlais même pas de saisie.
Une fiche avec clé étrangère optionnelle (relation 0 ou 1)

une simple: hraz() puis hajoute() provoque le problème
(hraz() met "0", ce qui ne plait pas a mssql qui attend null)


Firetox a écrit :
Bonour,

non pas la cle dans l'analyse
le champs de la fenetre a passé en texte


"free" news:4b7ad09c$0$9105$
Bonjour

Merci pour la réponse
Il s'agit de clé étrangere, donc un poil délicat de passer en texte.

J'ai continuer a investiguer, semblerait qu'il faille aller cocher une
propriété null sur la rubrique.
Dans l'aide ca parle aussi de fichier.rubrique..null=vrai pour forcer
le null sur une rubrique.

Mais ce qui m'inquiete plus, c'est l'initialisation de tout ca .
1) db faite sur le serveur
2) création d'une analyse, import de la description des tables
3) aller manuellement coher cette propriété sur toutes les rubriques
étant clé étrangeres facultative
cette derniere étape me semble d'une folie monstrueuse des que la db
possède pas mal de table.



"Firetox" news:4b7ac3c1$0$6285$
Bonjour

Si je fait hraz sur la fiche, il semblerait que windev y mette 0 au
lieu de null, et du coup, sqlserveur rale sur les contraintes
d'intégritées.



le champs doit etre en numerique alors
le fait qu'on veuille gerer le null impose plusieurs contraintes

le null n'est pas une valeur pour le SQL (c'est absence de valeur)
or si vous mettez un numerique windev va y coller 0 mais 0 est une
valeur alors que null non

dans ce cas il faut mettre le champs en texte
on a donc soit une valeur 0 ...... 99999999999999 soit blanc ""
chaine vide qui representera le null

maintenant il faut que windev le prenne en compte en gerant les ordre
H et ne pas transmettre de valeur ou alors transmettre null sans
guillement pas comme une chaine mais ecrit null

bon dev
@+











Firetox
Le #21213521
Bonjour,

moi non plus
hraz est lié aux champs d'une fenetre
le champ concerné est en numerique ou texte (champ de la fenetre)
donc un hraz avec un numerique met 0 dedans mais avec un texte il doit
mettre ""
et le hajoute avec "" dans le champ devrait envoyé null dans la base


"patrice" news:4b7b3518$0$24700$
La je parlais même pas de saisie.
Une fiche avec clé étrangère optionnelle (relation 0 ou 1)

une simple: hraz() puis hajoute() provoque le problème
(hraz() met "0", ce qui ne plait pas a mssql qui attend null)


Firetox a écrit :
Bonour,

non pas la cle dans l'analyse
le champs de la fenetre a passé en texte


"free" news:4b7ad09c$0$9105$
Bonjour

Merci pour la réponse
Il s'agit de clé étrangere, donc un poil délicat de passer en texte.

J'ai continuer a investiguer, semblerait qu'il faille aller cocher une
propriété null sur la rubrique.
Dans l'aide ca parle aussi de fichier.rubrique..null=vrai pour forcer le
null sur une rubrique.

Mais ce qui m'inquiete plus, c'est l'initialisation de tout ca .
1) db faite sur le serveur
2) création d'une analyse, import de la description des tables
3) aller manuellement coher cette propriété sur toutes les rubriques
étant clé étrangeres facultative
cette derniere étape me semble d'une folie monstrueuse des que la db
possède pas mal de table.



"Firetox" news:4b7ac3c1$0$6285$
Bonjour

Si je fait hraz sur la fiche, il semblerait que windev y mette 0 au
lieu de null, et du coup, sqlserveur rale sur les contraintes
d'intégritées.



le champs doit etre en numerique alors
le fait qu'on veuille gerer le null impose plusieurs contraintes

le null n'est pas une valeur pour le SQL (c'est absence de valeur)
or si vous mettez un numerique windev va y coller 0 mais 0 est une
valeur alors que null non

dans ce cas il faut mettre le champs en texte
on a donc soit une valeur 0 ...... 99999999999999 soit blanc "" chaine
vide qui representera le null

maintenant il faut que windev le prenne en compte en gerant les ordre H
et ne pas transmettre de valeur ou alors transmettre null sans
guillement pas comme une chaine mais ecrit null

bon dev
@+













Daireaux Jean-Baptiste
Le #21214191
Firetox a écrit :
Bonjour,

moi non plus
hraz est lié aux champs d'une fenetre
le champ concerné est en numerique ou texte (champ de la fenetre)
donc un hraz avec un numerique met 0 dedans mais avec un texte il doit
mettre ""
et le hajoute avec "" dans le champ devrait envoyé null dans la base





Bonjour,

Juste pour signaler, Hraz affecte les variable d'état liée à la
description de l'analyse et ne touche pas et n'a aucun lien avec les
champ d'une fenêtre.

Ne pas confondre avec RAZ qui vide les champ de la fenêtre.

Bonne journée
J.B.D.
Firetox
Le #21214921
Bonjour,

oui vous avez raison
je parlais de Raz et comme je n'utilise pas l'analyse windev pour mes base
SQL
je n'ai a ffaire qu'a Raz

Desolé

"Daireaux Jean-Baptiste" dans le message de news:4b7bb1f9$0$23237$
Firetox a écrit :
Bonjour,

moi non plus
hraz est lié aux champs d'une fenetre
le champ concerné est en numerique ou texte (champ de la fenetre)
donc un hraz avec un numerique met 0 dedans mais avec un texte il doit
mettre ""
et le hajoute avec "" dans le champ devrait envoyé null dans la base





Bonjour,

Juste pour signaler, Hraz affecte les variable d'état liée à la
description de l'analyse et ne touche pas et n'a aucun lien avec les champ
d'une fenêtre.

Ne pas confondre avec RAZ qui vide les champ de la fenêtre.

Bonne journée
J.B.D.


nico9600 Hors ligne
Le #25934812
Le mardi 16 Février 2010 à 17:02 par free :
Bonjour

J'utilise l'acces natif avec sql serveur
J'ai une clé etrangere optionnelle dans une fiche (qui peut etre nulle)
Si je fait hraz sur la fiche, il semblerait que windev y mette 0 au lieu de
null, et du coup, sqlserveur rale sur les contraintes
d'intégritées.

Auriez vous un avis dessus ?


J'ai exactement le même problème (et cela n'est pas lié au champ de saisie mais bien à la rubrique)
Je convient que théoriquement dans un champ numérique la valeur par défaut est 0, et pour les char c'est "".
Mais dans SQL server on peut mettre Null, afin de gérer les cardinalités type 0-n.

Par contre dans windev, il y a bien dans la description d'une rubrique de type entier (clé étrangère en l'occurence) la possibilité d'autoriser les valeur null (case à cocher) et aussi de définir la valeur par défaut en Null !

Bon tout cela est très logique mai seul hic.. ca ne fonctionne pas ... lorsqu'on fait un Hraz la valeur qui est mise dans la rubrique est 0. J'ai même essayé de la forcer avec un brutal : MaTable.MaCléEtrangère = Null, et bien pas de message d'erreur mais c'est toujours 0 qui est effectivement attribué à la rubrique....
Quelqu'un a-t-il une solution ?
Publicité
Poster une réponse
Anonyme