247,7 → 247,7 |
<p><i>The sorting of UUIDs in SQL Server is rather confusing and incompatible with UUIDv6 and UUIDv7.<br> |
Therefore this method developed by <a href="https://www.hickelsoft.de/">HickelSOFT</a> |
generates UUIDs which are sortable by SQL Server.<br> |
They have a time resolution of 1 milliseconds combined with 18 bits of random data.</i><br> |
They have a time resolution of 1 milliseconds combined with 16 bits of random data.</i><br> |
<a href="https://gist.github.com/danielmarschall/7fafd270a3bc107d38e8449ce7420c25">C# implementation</a> | |
<a href="https://github.com/danielmarschall/uuid_mac_utils/blob/master/includes/uuid_utils.inc.php">PHP implementation</a> |
</p> |
259,7 → 259,7 |
} |
</script> |
<p><a id="uuidv8_sqlserver_info_button" href="javascript:show_uuidv8_sqlserver_info()">Show format</a> |
<pre id="uuidv8_sqlserver_info" style="display:none">Version 2: Resolution of 1 milliseconds, random part of 18 bits, UTC time, 48 bit random "signature", UUIDv8 conform: |
<pre id="uuidv8_sqlserver_info" style="display:none">Version 2: Resolution of 1 milliseconds, random part of 16 bits, UTC time, 48 bit random "signature", UUIDv8 conform: |
- 16 bit Random data |
- 8 bit UTC Milliseconds transformed from 1000ms to 0..255, deviation -2ms..2ms (hex encoded) |
- 8 bit UTC Seconds (hex encoded) |
267,11 → 267,11 |
- 4 bit UUID version 8 |
- 12 bit UTC Day of the year (1..366, hex encoded) |
- 2 bit UUID Variant (0b10) |
- 2 bit Random data |
- 2 bit Unused (must be zero) |
- 12 bit UTC Year (hex encoded) |
- 48 bit Signature 0x5ce32bd83b96 |
|
Version 1: Resolution of 1 milliseconds, random part of 16 bits, local timezone, 48 zero bit "signature", NOT UUIDv8 conform: |
Version 1: Resolution of 1 milliseconds, random part of 16 bits, local timezone, 48 zero bits "signature", NOT UUIDv8 conform: |
- 16 bit Random data |
- 8 bit Generator's local timezone Milliseconds transformed from 1000ms to 0..255, deviation -4ms..0ms (hex encoded) |
- 8 bit Generator's local timezone Seconds (BCD encoded) |