powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / binary(16) в bigint
5 сообщений из 5, страница 1 из 1
binary(16) в bigint
    #40080480
doz.ace
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересует, можно ли конвертировать binary16 в bigint / int?

К примеру при преобразовании в bigint значения binary(16)
Например из BINARY(16) = 0x80C3B15B250D5FEB 11EB562F3E4DF5E5 получаем 1291220479080527333
но обратная операция уже приводит к 0x0000000000000000 11EB562F3E4DF5E5
До 11EB562F3E4DF5E5 теряется часть данных. Это корректно? или binary(16) не помещается в BIGINT и режется?
binary(16) по идее 16 байт, а bigint - 8 байт

DECLARE @vbinary BINARY(16) = 0x80C3B15B250D5FEB11EB562F3E4DF5E5 -- 1291220479080527333
-- 0x000000000000000011EB562F3E4DF5E5
-- 0x000000000000000011EB562F3E4DF5E5
,@vbigint bigint = 1291220479080527333

SELECT
-- @vbinary + 0 test,
CONVERT(bigint, @vbinary) bigint_,
CONVERT(BINARY(16), @vbigint) binary16_

,CONVERT(BINARY(16), CONVERT(BIGINT, @vbinary)) bigint_to_binary16
...
Рейтинг: 0 / 0
binary(16) в bigint
    #40080482
doz.ace
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уже нашел похожую тему, копаю
https://www.sql.ru/forum/1189174/iz-binary-16-v-bigint
...
Рейтинг: 0 / 0
binary(16) в bigint
    #40080483
doz.ace
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
понятно, преобразовываются только последние 8 байт...
...
Рейтинг: 0 / 0
binary(16) в bigint
    #40080486
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bigint - 8 байт

без потери данных 16 байт туда не впихнуть
...
Рейтинг: 0 / 0
binary(16) в bigint
    #40080613
uaggster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
msLex
bigint - 8 байт

без потери данных 16 байт туда не впихнуть

Почему не впихнуть то?
... Просто впихивать надо в 2 bigint.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / binary(16) в bigint
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]