J'ai crée cette procédure stockée:
(
@nivGestConnect tinyint,
@IdSystDiffus tinyint=Null
)
AS
SET NOCOUNT ON;
SELECT DISTINCT Ville
FROM Adresses
INNER JOIN Adr_id_syst_diffus ON Adresses.Id_adr = Adr_id_syst_diffus.Id_adr
WHERE (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR
@IdSystDiffus=Null)
AND Adresses.Niveau_affic_gest<=@nivGestConnect AND
Adresses.Niveau_affic_auteur<=@nivGestConnect
ORDER BY Ville;
Si je passe un chiffre à @IdSystDiffus pas de problème, j'ai bien une
sélection d'enregistrements.
par contre quand je passe Null, je voudrai avoir toutes les lignes.
Pourtant il me semble bien que la première ligne
(Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR
@IdSystDiffus=Null) est vrai!
A noter que tous la colonne Id_syst_diffus ne comporte pas de champ "Null"
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
bruno reiter [MVP]
remplaces @IdSystDiffus=Null par @IdSystDiffus is Null
NULL n'est pas une valeur mais un état
br
"herve" wrote in message news:
Bonjour,
J'ai crée cette procédure stockée: ( @nivGestConnect tinyint, @IdSystDiffus tinyint=Null ) AS SET NOCOUNT ON; SELECT DISTINCT Ville FROM Adresses INNER JOIN Adr_id_syst_diffus ON Adresses.Id_adr = Adr_id_syst_diffus.Id_adr WHERE (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) AND Adresses.Niveau_affic_gest<=@nivGestConnect AND Adresses.Niveau_affic_auteur<=@nivGestConnect ORDER BY Ville;
Si je passe un chiffre à @IdSystDiffus pas de problème, j'ai bien une sélection d'enregistrements. par contre quand je passe Null, je voudrai avoir toutes les lignes. Pourtant il me semble bien que la première ligne (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) est vrai! A noter que tous la colonne Id_syst_diffus ne comporte pas de champ "Null"
a+ herve
remplaces @IdSystDiffus=Null
par @IdSystDiffus is Null
NULL n'est pas une valeur mais un état
br
"herve" <hd-nospam@9online.fr> wrote in message
news:3FFA894B.2000903@9online.fr...
Bonjour,
J'ai crée cette procédure stockée:
(
@nivGestConnect tinyint,
@IdSystDiffus tinyint=Null
)
AS
SET NOCOUNT ON;
SELECT DISTINCT Ville
FROM Adresses
INNER JOIN Adr_id_syst_diffus ON Adresses.Id_adr = Adr_id_syst_diffus.Id_adr
WHERE (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR
@IdSystDiffus=Null)
AND Adresses.Niveau_affic_gest<=@nivGestConnect AND
Adresses.Niveau_affic_auteur<=@nivGestConnect
ORDER BY Ville;
Si je passe un chiffre à @IdSystDiffus pas de problème, j'ai bien une
sélection d'enregistrements.
par contre quand je passe Null, je voudrai avoir toutes les lignes.
Pourtant il me semble bien que la première ligne
(Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR
@IdSystDiffus=Null) est vrai!
A noter que tous la colonne Id_syst_diffus ne comporte pas de champ "Null"
remplaces @IdSystDiffus=Null par @IdSystDiffus is Null
NULL n'est pas une valeur mais un état
br
"herve" wrote in message news:
Bonjour,
J'ai crée cette procédure stockée: ( @nivGestConnect tinyint, @IdSystDiffus tinyint=Null ) AS SET NOCOUNT ON; SELECT DISTINCT Ville FROM Adresses INNER JOIN Adr_id_syst_diffus ON Adresses.Id_adr = Adr_id_syst_diffus.Id_adr WHERE (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) AND Adresses.Niveau_affic_gest<=@nivGestConnect AND Adresses.Niveau_affic_auteur<=@nivGestConnect ORDER BY Ville;
Si je passe un chiffre à @IdSystDiffus pas de problème, j'ai bien une sélection d'enregistrements. par contre quand je passe Null, je voudrai avoir toutes les lignes. Pourtant il me semble bien que la première ligne (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) est vrai! A noter que tous la colonne Id_syst_diffus ne comporte pas de champ "Null"
a+ herve
Laurent Moreau
Il faut mettre:
@IdSystDiffus IS Null à la place de: @IdSystDiffus=Null
Laurent.
"herve" wrote in message news:
Bonjour,
J'ai crée cette procédure stockée: ( @nivGestConnect tinyint, @IdSystDiffus tinyint=Null ) AS SET NOCOUNT ON; SELECT DISTINCT Ville FROM Adresses INNER JOIN Adr_id_syst_diffus ON Adresses.Id_adr Adr_id_syst_diffus.Id_adr WHERE (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) AND Adresses.Niveau_affic_gest<=@nivGestConnect AND Adresses.Niveau_affic_auteur<=@nivGestConnect ORDER BY Ville;
Si je passe un chiffre à @IdSystDiffus pas de problème, j'ai bien une sélection d'enregistrements. par contre quand je passe Null, je voudrai avoir toutes les lignes. Pourtant il me semble bien que la première ligne (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) est vrai! A noter que tous la colonne Id_syst_diffus ne comporte pas de champ "Null"
a+ herve
Il faut mettre:
@IdSystDiffus IS Null
à la place de:
@IdSystDiffus=Null
Laurent.
"herve" <hd-nospam@9online.fr> wrote in message
news:3FFA894B.2000903@9online.fr...
Bonjour,
J'ai crée cette procédure stockée:
(
@nivGestConnect tinyint,
@IdSystDiffus tinyint=Null
)
AS
SET NOCOUNT ON;
SELECT DISTINCT Ville
FROM Adresses
INNER JOIN Adr_id_syst_diffus ON Adresses.Id_adr Adr_id_syst_diffus.Id_adr
WHERE (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR
@IdSystDiffus=Null)
AND Adresses.Niveau_affic_gest<=@nivGestConnect AND
Adresses.Niveau_affic_auteur<=@nivGestConnect
ORDER BY Ville;
Si je passe un chiffre à @IdSystDiffus pas de problème, j'ai bien une
sélection d'enregistrements.
par contre quand je passe Null, je voudrai avoir toutes les lignes.
Pourtant il me semble bien que la première ligne
(Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR
@IdSystDiffus=Null) est vrai!
A noter que tous la colonne Id_syst_diffus ne comporte pas de champ "Null"
@IdSystDiffus IS Null à la place de: @IdSystDiffus=Null
Laurent.
"herve" wrote in message news:
Bonjour,
J'ai crée cette procédure stockée: ( @nivGestConnect tinyint, @IdSystDiffus tinyint=Null ) AS SET NOCOUNT ON; SELECT DISTINCT Ville FROM Adresses INNER JOIN Adr_id_syst_diffus ON Adresses.Id_adr Adr_id_syst_diffus.Id_adr WHERE (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) AND Adresses.Niveau_affic_gest<=@nivGestConnect AND Adresses.Niveau_affic_auteur<=@nivGestConnect ORDER BY Ville;
Si je passe un chiffre à @IdSystDiffus pas de problème, j'ai bien une sélection d'enregistrements. par contre quand je passe Null, je voudrai avoir toutes les lignes. Pourtant il me semble bien que la première ligne (Adr_id_syst_diffus.Id_syst_diffus = @IdSystDiffus OR @IdSystDiffus=Null) est vrai! A noter que tous la colonne Id_syst_diffus ne comporte pas de champ "Null"
a+ herve
herve
Merci à Bruno et laurent. Bonne années à tout le monde herve
Merci à Bruno et laurent.
Bonne années à tout le monde
herve