Devrais-je utiliser binary(16)
ou varbinary(16)
?Comment stocker à la fois IPv4 ou IPv6 dans une seule colonne dans SQL Server?
Je sais que je peux utiliser getAddress()
dans java.net.InetAddress
(Java) ou System.Net.IPAddress
(C#) pour obtenir une représentation byte[]
des deux IPv4
et IPv6
, mais si je dois insérer IPv4
-à-dire binary(4)
dans un champ binary(16)
à SQL Server
, ai-je besoin s'inquiéter du rembourrage ou de quoi que ce soit?
Puisque je m'attends à ce que la majorité de l'IP soit toujours en IPv4, je suppose que varbinary (16) a du sens. – Henry
Et le coût de création d'un champ de longueur variable – NullUserException
Pour les détails des coûts exacts, voir http://msdn.microsoft.com/en-us/library/ms178085.aspx et/ou http://sqlskills.com/blogs/paul /post/Inside-the-Storage-Engine-Anatomy-of-a-record.aspx –