6
votes

La différence entre MySQL n'est pas nulle et! = ''

Y a-t-il une différence entre MySQL

IF (myText != '') THEN


0 commentaires

3 Réponses :


12
votes

Oui, il existe une grande différence entre un NULL la valeur et une valeur vide / vide.

voici une ressource décrivant les différences.

lorsque MyText est null :

  • myText n'est pas null évalue vers false
  • myText! = '' évalue à null (qui se comporte essentiellement la même que faux dans ce cas spécifique que vous avez écrit)

    Cependant, vous ne devez pas entrer dans l'habitude de les traiter de la même manière, car la plupart du temps, ils se comporteront différemment: par exemple:

    suppose que vous avez une table tbl : xxx

    Remarque: 1 contient un null valeur et 2 contient une chaîne vide ( '' <').

    Si vous exécutez la requête suivante: xxx

    ... il retournera record 3. < / p>

    Si vous exécutez la requête suivante: xxx

    ... il retournera les enregistrements 2 et 3.


0 commentaires

2
votes

Oui, il y a une différence.

en mots simples, MyText n'est pas NULL Spécifie que MyText a une valeur une valeur qui pourrait être '' aussi .

où comme myText! = '' << / strong> Spécifie qu'il retourne true, si MyText ne contient pas une chaîne vide . .


0 commentaires

1
votes

Il y a une différence. Si la valeur par défaut d'une colonne est "null", si aucune donnée n'a été définie pour un champ, c'est vraiment null. Toutefois, si la valeur d'un champ a été mise à jour comme '', ce n'est pas null, mais il est vide.

voir ici pour plus d'informations Lien


0 commentaires