13

またはを使用する必要がありますbinary(16)varbinary(16)

getAddress()in java.net.InetAddress(Java) またはSystem.Net.IPAddress(C#) を使用してとbyte[]の両方の表現を取得できることはわかっています が、 ieを のフィールドに挿入する必要がある場合、パディングなどについて心配する必要がありますか?IPv4IPv6IPv4binary(4)binary(16)SQL Server

4

2 に答える 2

17

binary(4)a を列に格納するとbinary(16)、それを読み取ると、長さ 16 のパディングされた値が返されます。動的な長さを使用する場合は、 a を使用する必要がありますvarbinary(16)。このタイプは、挿入されたデータの長さを保持しますが、ディスク上に 2 バイト (実際の長さ) が余分に追加されます。

于 2010-08-25T00:02:33.093 に答える
8

v4-in-v6 アドレス埋め込みを使用して、ipv4 アドレスを ipv6 形式に変換します。そうすれば、それらをすべて同じように扱うことができます。

于 2010-08-25T00:11:48.533 に答える