Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
19.08.2019, 19:18
|
|||
|---|---|---|---|
Конвертирование в число |
|||
|
#18+
Добрый день. Есть громадная таблица. Она должна быть выгружена в стороннюю программу в которой будет потом происходить связь с другой таблицей по ключевому полю. Таким ключевым полем является поле с типом binary(16). Первоначально была идея конвертнуть это поле в bigint для того, что бы связь в сторонней программе была более быстрой (как я предполагал циферная связь быстрее работает чем текстовая а значит это лучше). Но столкнулся с проблемой, что разные binary(16) могут конвертиться в одинаковое значение bigint. Подскажите как быть? Нет смысла вообще переводить в bigint и сторонней программе так и работать с исходным текстовым полем для связи, или все же есть какой то хитрый способ как можно правильнее конвертировать binary(16) в bigint без задвоений? Спасибо. Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64) Apr 2 2010 15:48:46 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.08.2019, 19:32
|
|||
|---|---|---|---|
|
|||
Конвертирование в число |
|||
|
#18+
Удивительно, как это 16 байт не влезает в 8 без потери точности... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.08.2019, 19:33
|
|||
|---|---|---|---|
Конвертирование в число |
|||
|
#18+
Pallich, Bigint это 8 байт. А binary(16) это 16 байт. 16 байт может влезть в guid / uniqueidentifier. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.08.2019, 19:40
|
|||
|---|---|---|---|
Конвертирование в число |
|||
|
#18+
a_voroninPallich, Bigint это 8 байт. А binary(16) это 16 байт. 16 байт может влезть в guid / uniqueidentifier. а еще, вы не поверите, в binary(16). Зачем эти костыли с uniqueidentifier? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.08.2019, 20:36
|
|||
|---|---|---|---|
Конвертирование в число |
|||
|
#18+
Я понимаю, что 16 байт не влазит в 8 :) Я спрашиваю как быть? Нет варианта в цифру переделать? То есть придется оставлять это ключевое поле без конвертации и в сторонней программе соединять все же по этому полю как текстовому? Верно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.08.2019, 22:14
|
|||
|---|---|---|---|
Конвертирование в число |
|||
|
#18+
Pallich, С каких пор binary стало текстом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.08.2019, 22:15
|
|||
|---|---|---|---|
Конвертирование в число |
|||
|
#18+
Mind, В сторонней программе это поле станет текстом :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.08.2019, 22:38
|
|||
|---|---|---|---|
|
|||
Конвертирование в число |
|||
|
#18+
Pallich, Обратитесь к документации вашей программы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&mobile=1&tid=1687389]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 369ms |

| 0 / 0 |
