Какой тип BLOB? - PullRequest
       21

Какой тип BLOB?

0 голосов
/ 16 января 2019

В моей базе данных около 100 000 больших двоичных объектов, и мне приходится работать с ними. Все в порядке, когда кто-то говорит мне, с каким типом BLOB я должен иметь дело. Но будут ситуации, когда я не буду знать, какой это тип. Итак, как я могу узнать, какой тип моего BLOB-объекта?

В последний раз, когда я обращался с BLOB, я получил конкретную информацию об этом, это был заархивированный файл Так я и сделал ..

try {
   byte[] str = this.jdbcTemplate.queryForObject("SELECT SAVEDATA FROM JDBEVPP1.TEVP005 WHERE GFNR = 357302", byte[].class);    // pakira BLOB u byte array
   ByteArrayInputStream bys = new ByteArrayInputStream(str);
   GZIPInputStream gzip = new GZIPInputStream(bys);
   //...etc...
}

Как узнать, какой тип BLOB использует код Java?

1 Ответ

0 голосов
/ 29 января 2019

Окончательным ответом на этот вопрос будет комментарий Роберта Харви:

"Обычный способ идентифицировать двоичный файл некоторого типа - это иметь в начале файла" магические числа ", которые можно использовать для идентификации типа. См. En.wikipedia.org/wiki/… и en .wikipedia.org / вики / File_format # Magic_number "

А также комментарий Эрвина Смута:

"Читая подробные спецификации дизайна базы данных. Отсутствует, пытаясь найти первоначального автора системы и надеясь, что он все еще помнит. Отсутствует, пытаясь найти другой код, который использует тот же BLOB и вид переосмысление спецификации оттуда. В большинстве магазинов вам придется пройти весь путь до третьего шага, увы. "

...