Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / HASH и текстовый блоб / 5 сообщений из 5, страница 1 из 1
06.01.2022, 01:17
    #40124910
Док
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HASH и текстовый блоб
DDL
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CREATE DOMAIN DMN_BLOBTXT AS
BLOB SUB_TYPE 1 SEGMENT SIZE 80 CHARACTER SET UTF8
COLLATE UTF8;
--------------------------------
CREATE TABLE TBL_MEDPOLICE (
...
    SERVICES_SET          DMN_BLOBTXT,
    SERVICES_SET_HASH     BIGINT,
...
);



Какой способ считается кошерным и идеологически верным?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT
    SERVICES_SET
  , HASH(SERVICES_SET) AS HASH_BLOB_1
  , HASH(CAST(SERVICES_SET AS BLOB SUB_TYPE TEXT CHARACTER SET UTF8)) AS HASH_BLOB_2
  , HASH(
        CAST(
          CAST(SERVICES_SET AS BLOB SUB_TYPE TEXT CHARACTER SET UTF8) AS VARCHAR(8191)
            )
        ) AS HASH_BLOB_3
FROM TBL_MEDPOLICE



=================
Док.

Win10 Ultim x64/Deb 10 amd64/Darwin Cocoa(Monterey):
FB 3.0.7.33374, Lazarus 2.3.0(trunk); FPC 3.3.1(trunk)
...
Рейтинг: 0 / 0
06.01.2022, 01:49
    #40124914
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HASH и текстовый блоб
ДокКакой способ считается кошерным и идеологически верным?

Сугубо без разницы, главное чтобы он был одинаковым при генерации хэша и поиске
по нему.

И никогда не забывай: разный хэш - точно разное содержимое, одинаковый хэш - не
точно разное содержимое.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
06.01.2022, 02:14
    #40124915
YuRock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HASH и текстовый блоб
Док,

Нафига только utf8 для хэша - не понятно.
...
Рейтинг: 0 / 0
06.01.2022, 02:21
    #40124918
Док
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HASH и текстовый блоб
Dimitry Sibiryakov

про коллизии помню

YuRock

поскольку в мануале написано про поддержку блобов любого цвета любой длины и набора символов, то не стал заморачиваться - выбрал первый вариант.

Единственный момент, хэш решил хранить в строковом представлении - фиг его знает, как 32-битные приложения работают с бигинтами
...
Рейтинг: 0 / 0
06.01.2022, 02:27
    #40124919
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
HASH и текстовый блоб
Докхэш решил хранить в строковом представлении - фиг его знает, как 32-битные
приложения работают с бигинтами

Этот хэш - 32-х разрядный. В отличии от криптохэшей в четвёрке.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / HASH и текстовый блоб / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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