HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <ul><li><a>Тип данных - это…</a><ul><li><a>Классификация</a></li>
1 <ul><li><a>Тип данных - это…</a><ul><li><a>Классификация</a></li>
2 </ul></li>
2 </ul></li>
3 <li><a>Blob - определение</a><ul><li><a>Синтаксис</a></li>
3 <li><a>Blob - определение</a><ul><li><a>Синтаксис</a></li>
4 </ul></li>
4 </ul></li>
5 <li><a>API и Blob</a><ul><li><a>Как использовать</a></li>
5 <li><a>API и Blob</a><ul><li><a>Как использовать</a></li>
6 <li><a>Свойства и методы</a></li>
6 <li><a>Свойства и методы</a></li>
7 </ul></li>
7 </ul></li>
8 </ul><p>Программирование предусматривает обязательную работу с разными типами данных. Неграмотное использование типа данных может стать причиной критической ошибки. Поэтому важно уделить вопросу отдельное внимание.</p>
8 </ul><p>Программирование предусматривает обязательную работу с разными типами данных. Неграмотное использование типа данных может стать причиной критической ошибки. Поэтому важно уделить вопросу отдельное внимание.</p>
9 <p>В данной статье речь зайдет не о самом распространенном, но встречающемся на практике компоненте. А именно - blob. Он особо актуален для базы данных и двоичных записей.</p>
9 <p>В данной статье речь зайдет не о самом распространенном, но встречающемся на практике компоненте. А именно - blob. Он особо актуален для базы данных и двоичных записей.</p>
10 <h2>Тип данных - это…</h2>
10 <h2>Тип данных - это…</h2>
11 <p>Типом данных принято называть множество значений и операций над ними. Класс информации, который характеризуется членами классами и операциями, которые к ним применяются (или могут быть задействованы).</p>
11 <p>Типом данных принято называть множество значений и операций над ними. Класс информации, который характеризуется членами классами и операциями, которые к ним применяются (или могут быть задействованы).</p>
12 <p>Типом данных называют категоризацию абстрактного множества возможных параметров, значений и характеристик, а также набор манипуляций для того или иного атрибута. При помощи соответствующего элемента можно определить "итог" и смысл выражения, операции, способы хранения того или иного результата.</p>
12 <p>Типом данных называют категоризацию абстрактного множества возможных параметров, значений и характеристик, а также набор манипуляций для того или иного атрибута. При помощи соответствующего элемента можно определить "итог" и смысл выражения, операции, способы хранения того или иного результата.</p>
13 <h3>Классификация</h3>
13 <h3>Классификация</h3>
14 <p>Перед более детальным рассмотрение blob необходимо хорошо разобраться с "видами" данных в программировании. Существует следующая классификация соответствующих компонентов:</p>
14 <p>Перед более детальным рассмотрение blob необходимо хорошо разобраться с "видами" данных в программировании. Существует следующая классификация соответствующих компонентов:</p>
15 <ol><li>Логический. Значение - только "истина" или "ложь".</li>
15 <ol><li>Логический. Значение - только "истина" или "ложь".</li>
16 <li>Целочисленный. Предусматривает хранение чисел (без знаков в том числе).</li>
16 <li>Целочисленный. Предусматривает хранение чисел (без знаков в том числе).</li>
17 <li>С плавающей запятой. Представляют вещественные числа.</li>
17 <li>С плавающей запятой. Представляют вещественные числа.</li>
18 <li>Строковый. Отвечает за хранение всей строчки в переменной как единого целого.</li>
18 <li>Строковый. Отвечает за хранение всей строчки в переменной как единого целого.</li>
19 <li>Указатели. Представлены переменными, диапазоны значений которых включают в себя адреса ячеек памяти или специального значения для обозначения того, что в текущий момент времени в переменной ничего не записано.</li>
19 <li>Указатели. Представлены переменными, диапазоны значений которых включают в себя адреса ячеек памяти или специального значения для обозначения того, что в текущий момент времени в переменной ничего не записано.</li>
20 <li>Идентификационный. В коде будет интерпретироваться не как число. Это - уникальный идентификатор.</li>
20 <li>Идентификационный. В коде будет интерпретироваться не как число. Это - уникальный идентификатор.</li>
21 </ol><p>Также есть абстрактные типы данных, которые будут рассматриваться независимо от контекста и реализации в языке программирования.</p>
21 </ol><p>Также есть абстрактные типы данных, которые будут рассматриваться независимо от контекста и реализации в языке программирования.</p>
22 <p>Blob - тип данных, который предназначается специально для хранения большого количества электронных материалов, постоянно подвергающихся корректировкам. Может быть задействован в БД.</p>
22 <p>Blob - тип данных, который предназначается специально для хранения большого количества электронных материалов, постоянно подвергающихся корректировкам. Может быть задействован в БД.</p>
23 <p>При помощи Blob можно хранить данные, которые не могут размещаться в полях иного типа. Сюда относят:</p>
23 <p>При помощи Blob можно хранить данные, которые не могут размещаться в полях иного типа. Сюда относят:</p>
24 <ul><li>музыку;</li>
24 <ul><li>музыку;</li>
25 <li>аудиозаписи;</li>
25 <li>аудиозаписи;</li>
26 <li>картинки;</li>
26 <li>картинки;</li>
27 <li>анимацию;</li>
27 <li>анимацию;</li>
28 <li>иные компоненты.</li>
28 <li>иные компоненты.</li>
29 </ul><p>Это - большой двоичный object. Он представляет строчку переменной длины, значение которой составляет до 2 147 483 647 символов. С кодовой страницей никак не связан, как и иные строчки соответствующего характера. Символьных данных такие компоненты не содержат.</p>
29 </ul><p>Это - большой двоичный object. Он представляет строчку переменной длины, значение которой составляет до 2 147 483 647 символов. С кодовой страницей никак не связан, как и иные строчки соответствующего характера. Символьных данных такие компоненты не содержат.</p>
30 <h3>Синтаксис</h3>
30 <h3>Синтаксис</h3>
31 <p>Blob - тип данных, который представлен самостоятельным объектом. Его достаточно легко использовать в программном коде. Длина будет указываться в байтах для соответствующих objects, если отсутствует один из суффиксов K, M или G. Они кратны соответственно:</p>
31 <p>Blob - тип данных, который представлен самостоятельным объектом. Его достаточно легко использовать в программном коде. Длина будет указываться в байтах для соответствующих objects, если отсутствует один из суффиксов K, M или G. Они кратны соответственно:</p>
32 <ul><li>1024;</li>
32 <ul><li>1024;</li>
33 <li>1024*1024;</li>
33 <li>1024*1024;</li>
34 <li>1024*1024*1024.</li>
34 <li>1024*1024*1024.</li>
35 </ul><p>Длина будет указываться в байтах для крупных двоичных объектов. Синтаксическая запись следующая:</p>
35 </ul><p>Длина будет указываться в байтах для крупных двоичных объектов. Синтаксическая запись следующая:</p>
36 <p>{большой двоичный объект} [(длина[{K|M|G}])]</p>
36 <p>{большой двоичный объект} [(длина[{K|M|G}])]</p>
37 <p>По умолчанию двоичный объект - это 2 Гб. В Java при компиляции используется тип java.sql.Blob (или mysql). Для получения дескриптора большого двоичного объекта для базовых данных в Джаве необходимо использовать метод getBlob.</p>
37 <p>По умолчанию двоичный объект - это 2 Гб. В Java при компиляции используется тип java.sql.Blob (или mysql). Для получения дескриптора большого двоичного объекта для базовых данных в Джаве необходимо использовать метод getBlob.</p>
38 <p>Чтобы создать поле type Blob в табличке, потребуется использовать запись типа:</p>
38 <p>Чтобы создать поле type Blob в табличке, потребуется использовать запись типа:</p>
39 <p>Create table testBlob(</p>
39 <p>Create table testBlob(</p>
40 <p>myBlobField blob);</p>
40 <p>myBlobField blob);</p>
41 <p>В ходе обработки запроса будет создана ячейка для хранения информации большого объема. Поля Blob по реализации внутри БД отличаются. Отличные от них "элементы" располагаются рядом. Blob хранит только идентификатор. Сам объект расположен на отдельной страничке. За счет такого приема обеспечивается хранение данных нефиксированного характера.</p>
41 <p>В ходе обработки запроса будет создана ячейка для хранения информации большого объема. Поля Blob по реализации внутри БД отличаются. Отличные от них "элементы" располагаются рядом. Blob хранит только идентификатор. Сам объект расположен на отдельной страничке. За счет такого приема обеспечивается хранение данных нефиксированного характера.</p>
42 <h2>API и Blob</h2>
42 <h2>API и Blob</h2>
43 <p>Blob - large binary data types. При работе с API выражен объект, подобный документу с неизменяемыми необработанными электронными материалами. Могут считываться как текст или двоичные сведения. Предусматривается преобразование в ReadableStream. Его методы применяются при обработке электронных материалов.</p>
43 <p>Blob - large binary data types. При работе с API выражен объект, подобный документу с неизменяемыми необработанными электронными материалами. Могут считываться как текст или двоичные сведения. Предусматривается преобразование в ReadableStream. Его методы применяются при обработке электронных материалов.</p>
44 <p>Blob-ы представляют разные сведения. Интерфейс File базируется на рассматриваемом объекте. Он наследует его функциональность, расширяя его со стороны пользователя.</p>
44 <p>Blob-ы представляют разные сведения. Интерфейс File базируется на рассматриваемом объекте. Он наследует его функциональность, расширяя его со стороны пользователя.</p>
45 <h3>Как использовать</h3>
45 <h3>Как использовать</h3>
46 <p>Для создания соответствующих объектов и сведений нужно задействовать конструктор Blob(). Для создания "блоба" из подмножества информации из другого blob’а требуется метод slice(). Получить рассматриваемый компонент для файла на файловой пользовательской системе поможет документация File.</p>
46 <p>Для создания соответствующих объектов и сведений нужно задействовать конструктор Blob(). Для создания "блоба" из подмножества информации из другого blob’а требуется метод slice(). Получить рассматриваемый компонент для файла на файловой пользовательской системе поможет документация File.</p>
47 <p>Стоит обратить внимание на то, что:</p>
47 <p>Стоит обратить внимание на то, что:</p>
48 <ol><li>Метод slice() обладает изначально задаваемой длинной во втором аргументе. Это необходимо для указания байт в новом Blob’е. При указании соответствующих параметров start + length, превышающий размер изначального "блоба", возвращаемый компонент будет включать в себя информацию от начального индекса до конца исходного object.</li>
48 <ol><li>Метод slice() обладает изначально задаваемой длинной во втором аргументе. Это необходимо для указания байт в новом Blob’е. При указании соответствующих параметров start + length, превышающий размер изначального "блоба", возвращаемый компонент будет включать в себя информацию от начального индекса до конца исходного object.</li>
49 <li>Slice() - метод, имеющий сторонние префиксы в некоторых браузерах.</li>
49 <li>Slice() - метод, имеющий сторонние префиксы в некоторых браузерах.</li>
50 <li>Старая версия упомянутого метода без посторонних приставок работает не так, как актуальная.</li>
50 <li>Старая версия упомянутого метода без посторонних приставок работает не так, как актуальная.</li>
51 </ol><p>Этой информации достаточно на начальных порах, чтобы понимать основы работы с рассматриваемым типом данных.</p>
51 </ol><p>Этой информации достаточно на начальных порах, чтобы понимать основы работы с рассматриваемым типом данных.</p>
52 <h3>Свойства и методы</h3>
52 <h3>Свойства и методы</h3>
53 <p>Свойства:</p>
53 <p>Свойства:</p>
54 <ol><li>Blob.isClosed - показывает, закрывался ли метод close(). Закрытый объект не читается.</li>
54 <ol><li>Blob.isClosed - показывает, закрывался ли метод close(). Закрытый объект не читается.</li>
55 <li>.size - размер данных в объекте. Указан в байтах.</li>
55 <li>.size - размер данных в объекте. Указан в байтах.</li>
56 <li>.type - строчка с MIME-типом, содержащихся в Blob. Если "вид" неизвестен, строчка окажется пустой.</li>
56 <li>.type - строчка с MIME-типом, содержащихся в Blob. Если "вид" неизвестен, строчка окажется пустой.</li>
57 </ol><p>Методы:</p>
57 </ol><p>Методы:</p>
58 <ol><li>Blob.close() - закрытие объекта. По возможности система освободит занятые им ресурсы.</li>
58 <ol><li>Blob.close() - закрытие объекта. По возможности система освободит занятые им ресурсы.</li>
59 <li>.slice([start[…,end[…, contentType]]]) - осуществляет возврат нового объекта, который содержит информацию в указанном диапазоне байтов исходного "блоба".</li>
59 <li>.slice([start[…,end[…, contentType]]]) - осуществляет возврат нового объекта, который содержит информацию в указанном диапазоне байтов исходного "блоба".</li>
60 <li>.stream - возвращает ReadableStream. Он может применяться для чтения содержимого соответствующего объекта.</li>
60 <li>.stream - возвращает ReadableStream. Он может применяться для чтения содержимого соответствующего объекта.</li>
61 <li>.text - возвращает promise, исполняемый с USVString. Он содержит все из "блоба", интерпретируемое как текст UTF-8.</li>
61 <li>.text - возвращает promise, исполняемый с USVString. Он содержит все из "блоба", интерпретируемое как текст UTF-8.</li>
62 </ol><p>Ниже - примеры того, как можно использовать тип данных Blob:</p>
62 </ol><p>Ниже - примеры того, как можно использовать тип данных Blob:</p>
63 <p>Чтобы лучше разбираться в Blob, можно посмотреть разнообразные<a>туториалы</a>. А специализированные дистанционные курсы помогут быстрее влиться в основы программирования. Меньше чем за год пользователя научат с нуля писать программы на JS и иных языках, работать с БД и многому другому. Полученный спектр знаний подтвердит электронный сертификат.</p>
63 <p>Чтобы лучше разбираться в Blob, можно посмотреть разнообразные<a>туториалы</a>. А специализированные дистанционные курсы помогут быстрее влиться в основы программирования. Меньше чем за год пользователя научат с нуля писать программы на JS и иных языках, работать с БД и многому другому. Полученный спектр знаний подтвердит электронный сертификат.</p>
64 <p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em></p>
64 <p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em></p>
65  
65