Nhibernate semble avoir un problème avec varbinary (16) quand tring pour représenter Guids. J'aurais pensé que varbinary (16) et binary (16) équivalent à la même chose.Y at-il une différence entre Binary (16) et VarBinary (16) dans MySQL?
Répondre
binaire (16) est une longueur fixe. Il utilise toujours 16 octets de stockage pour chaque ligne, en remplissant les octets supplémentaires avec 0x00 ou 0x20 (selon la version de MySQL) et en les supprimant sur SELECT. varbinary utilise une quantité d'espace variable - tout ce qui est nécessaire pour stocker les données sur cette ligne.
Si vos données sont toujours exactement 16 octets, il n'y a aucune différence. De façon réaliste, il n'y a probablement pas de différence avec une colonne aussi petite.
MySQL Manuel de référence: The BINARY and VARBINARY Types
« Lorsque les valeurs BINARY sont stockées, elles sont à droite avec la valeur jusqu'à la longueur spécifiée ... Pour VARBINARY, il n'y a pas de remplissage à l'insertion et aucun octet sont dépouillés sur select. "
Pour développer sur ce point, la différence entre VAR_TYPE_ et TYPE (où TYPE est quelque chose comme CHAR, INT, BINARY, etc.), est que la "version" non-VAR va se rembourré pour la longueur totale que vous spécifiez (si nécessaire). VAR- ne sera pas rembourré, ce qui le rend approprié pour stocker des commentaires de texte et autres.
- 1. enregistrement mysql ne dépassant pas 16 384
- 2. Pourquoi il y a une différence entre "importation" et "importation *"?
- 3. Type de données float 16 bits
- 4. Mélange de code 32 bits et 16 bits avec nasm
- 5. Y a-t-il une différence entre DataTable.Clear et DataTable.Rows.Clear?
- 6. Unicode utf-8/UTF-16 en Python
- 7. Conversion PHP UTF-16 en ASCII
- 8. Que pourrait indiquer une UIImage de taille 16 Bytes?
- 9. Différence entre MySQL .zip et .msi télécharger
- 10. Différence entre BOOST_CHECK_CLOSE et BOOST_CHECK_CLOSE_FRACTION?
- 11. Réception d'entiers 16 bits en Python
- 12. Quelle est la différence entre utf8_general_ci et utf8_unicode_ci dans MySql?
- 13. Comment puis-je sélectionner 16 enregistrements au hasard à partir d'une plage de lignes dans MySQL?
- 14. Y a-t-il une différence entre une "fonction" et une "macro" dans Objective-C?
- 15. Quelle est la différence entre latin1_general_ci et utf8_bin dans MYSQL
- 16. lecture en niveaux de gris 16 bits TIFF
- 17. 16 limite de bits sur des arguments XDrawString
- 18. Dans .NET, comment écrire un XMLDocument UTF-16 dans une chaîne avec une nomenclature
- 19. Y a-t-il une différence entre DateTime dans C# et DateTime dans SQL Server?
- 20. Décodage d'un caractère de 16 bits divisé en Java
- 21. Pixel shader WPF avec entrée HDR (16 bits)?
- 22. Comment convertir UTF-8 en UTF-16 en C?
- 23. findstr ou grep qui détecte automatiquement chararacter encodage (UTF-16)
- 24. Pad octet [] à multiple de 16 octets pour AES Encryption
- 25. Y a-t-il une différence entre installer mod_python via httpd.conf et conf.d dans apache?
- 26. Comment gérer une table de faits avec plus de 16 clés dans le serveur ms sql
- 27. Différence entre sqlreader et
- 28. Différence entre NULL et null dans PHP
- 29. Différence entre mysql et sql server? Performance, fonctionnalités, ...?
- 30. Différence entre "__method__" et "méthode"