πŸ”¬ Blob Π² SQL: Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅ ΠΈ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?

Π‘Π»ΠΎΠ± (BLOB) Π² SQL ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ "Binary Large Object" ΠΈ прСдставляСт собой Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ большиС Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Π‘Π»ΠΎΠ±Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для хранСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ изобраТСния, Π²ΠΈΠ΄Π΅ΠΎ, Π°ΡƒΠ΄ΠΈΠΎ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ².

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с ΠΏΠΎΠ»Π΅ΠΌ Ρ‚ΠΈΠΏΠ° BLOB:


CREATE TABLE my_table (
    id INT PRIMARY KEY,
    data BLOB
);
    

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΏΠΎΠ»Π΅ BLOB, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ INSERT:


INSERT INTO my_table (id, data)
VALUES (1, X'FFFF');
    

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅, ΠΌΡ‹ вставили Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ X'FFFF' Π² ΠΏΠΎΠ»Π΅ data Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ my_table.

Π’Π°ΠΊΠΆΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· поля BLOB с использованиСм SQL-запроса:


SELECT data
FROM my_table
WHERE id = 1;
    

Π’ этом запросС, ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· поля data Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ my_table для записи с id = 1.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ BLOB Π² SQL?

ΠŸΡ€ΠΈΠ²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽ! Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ BLOB Π² SQL ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

**BLOB** (Binary Large Object) прСдставляСт собой Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π² SQL, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ большиС ΠΎΠ±ΡŠΠ΅ΠΌΡ‹ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ изобраТСния, Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ Π²ΠΈΠ΄Π΅ΠΎ. BLOB ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π°ΠΉΡ‚ΠΎΠ², которая Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ структуры.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ BLOB?

ИспользованиС BLOB Π² SQL ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ:

  • Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Π΄ΠΈΠ°-Ρ„Π°ΠΉΠ»ΠΎΠ²: BLOB позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ изобраТСния ΠΈΠ»ΠΈ Π°ΡƒΠ΄ΠΈΠΎΡ„Π°ΠΉΠ»Ρ‹, нСпосрСдствСнно Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ обСспСчиваСт Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΈ.
  • Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²: BLOB ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для хранСния Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ PDF-Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ Microsoft Office. Π­Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° трСбуСтся Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ вмСстС с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.
  • ОбмСн Π΄Π°Π½Π½Ρ‹ΠΌΠΈ: BLOB ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями, особСнно Ρ‚Π°ΠΌ, Π³Π΄Π΅ эти Π΄Π°Π½Π½Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ изобраТСния.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования BLOB

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования BLOB Π² SQL. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° "Products" со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ схСмой:


CREATE TABLE Products (
    id INT PRIMARY KEY,
    name VARCHAR(100),
    image BLOB
);
    

Π’ этой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΌΡ‹ опрСдСляСм столбСц "image" Ρ‚ΠΈΠΏΠ° BLOB, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ изобраТСния ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ². Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ:


INSERT INTO Products (id, name, image)
VALUES (1, 'Ноутбук', 'Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ изобраТСния');
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ вставляСм Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ 1, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ "Ноутбук" ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ изобраТСния Π² столбСц "image".

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… BLOB

Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… BLOB ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ с использованиСм ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ SELECT:


SELECT image
FROM Products
WHERE id = 1;
    

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ этого запроса ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ изобраТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ дальшС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

BLOB - это Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Π² SQL, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с большими объСмами Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Он ΠΏΠΎΠ»Π΅Π·Π΅Π½ для хранСния ΠΌΠ΅Π΄ΠΈΠ°-Ρ„Π°ΠΉΠ»ΠΎΠ², Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями. ΠŸΡ€ΠΈ использовании BLOB Π² SQL Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ этими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ хранСния ΠΈ извлСчСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

ВСкстовый Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… BLOB ΠΈ TEXT Π² SQL ΠΈ Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… MySQL сСрвСра

Π£Ρ€ΠΎΠΊ Java 190: JDBC 8 : BLOB - Binary large objects

BLOB Datatype in MySQL | BLOB in SQL | MySQL Tutorial for Beginners in Hindi

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ Π² SQL: Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅ ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Π½ΡƒΠΆΠ½Ρ‹?

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Microsoft SQL Server Compact: описаниС ΠΈ прСимущСства

πŸ”¬ Blob Π² SQL: Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅ ΠΈ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ DATEDIFF Π² SQL: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ объяснСниС ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования

Вопросы sql - ΠΊΠ°ΠΊ ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… sql ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌΠΈ