Nous savons que la fonction OCTET_LENGTH() de MySQL mesure également la longueur de la chaîne en "octets", c'est donc un synonyme de la fonction MySQL LENGTH(). La syntaxe de cette fonction est OCTET_LENGTH(Str), où Str est la chaîne de caractères à renvoyer.
Il ne prend pas non plus en charge la sécurité multi-octets comme la fonction LENGTH(). Par exemple, si une chaîne contient quatre caractères de 2 octets, la fonction OCTET_LENGTH() renverra 8. Démontré dans l'exemple ci-dessous -
mysql> Select OCTET_LENGTH('tutorialspoint'); +--------------------------------+ | OCTET_LENGTH('tutorialspoint') | +--------------------------------+ | 14 | +--------------------------------+ 1 row in set (0.00 sec)
Le jeu de résultats ci-dessus montre que la chaîne "tutorialspoint" a une longueur de 14 car elle n'a pas été convertie en caractères Unicode. La requête suivante le convertit en caractère Unicode −
mysql> SET @A = CONVERT('tutorialspoint' USING ucs2); Query OK, 0 rows affected (0.02 sec)
Après avoir converti la chaîne en Unicode, le résultat est 28 au lieu de 14 car en Unicode, un caractère prend 2 octets comme indiqué ci-dessous −
mysql> Select OCTET_LENGTH(@A); +------------------+ | OCTET_LENGTH(@A) | +------------------+ | 28 | +------------------+ 1 row in set (0.00 sec)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!