我应该使用binary(16)还是varbinary(16)?我知道我可以在getAddress()(Java)或java.net.InetAddress(C#)中使用System.Net.IPAddress来获取byte[]和IPv4的IPv6表示形式,但是如果我需要插入IPv4即放入binary(4)的binary(16)字段中,我是否需要担心填充或其他问题? 最佳答案 如果将binary(4)存储在binary(16)列中,则在读取时会返回填充的长度16值。如果要具有动态长度,则必须使用varbinary(16)。此类型保留插入数据的长度,但会在磁盘上添加额外的2个字节(实际长度)。关于sql-server - 如何在SQL Server的单列中存储IPv4或IPv6?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3561902/ 10-13 08:44