MySQL-dən BLOB faylların oxunması

Deyək ki mən hər hansı bir şəkli bazada saxlamaq istəyirəm.

Table yaradıram:

CREATE TABLE blob_test(
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(10),
file_type VARCHAR(10),
my_file BLOB NOT NULL, 
PRIMARY KEY(id)
);

Daha sonra İnsert edirəm:

INSERT INTO blob_test(name,file_type,my_file) VALUES ('mysql','jpeg', LOAD_FILE('C:/Program Files/MySQL/MySQL Server 5.5/blog_output.png'));

Və daha sonra da Select :

SELECT * FROM blob_test;

Nəticə 🙂

mysql> select * from blob_test\G
*************************** 1. row ***************************
       id: 1
     name: mysql
file_type: jpeg
  my_file: ëPNG
→
IHDR  ☺¹   ♠   ├?¶l  ‼hIDATx£ÿØ?kõH→çò▀8♠£▄à├└991╔NrÄ£Lµl╗┴░Ó×═ÿ♫╠}üë6↑↑î↕â╣d┐┴Ç;Ü═6╗p`0\p┘
]á´[¬ÆJj§┤·ÿü▼ÒÚûTÛÀ̬_òJ¦╩∟   İ&;¶      └~┴ì☺  îâ┘♥  ↑│  0♫f☼  `∟╠▲  └8İ=  Çq0{   Ò`÷   ã
ì☺  îâ┘♥  ↑│  0♫f☼  `∟╠▲  └8İ=  Çq0{   Ò`÷   ã┴ì☺  îâ┘♥  ↑│  0♫f☼  `∟╠▲  └8İ=  Çq0{   Ò`÷
fÅ►B╚£0{═,f █O?©?■²W¸[»A ╔²▀´¦▼_▀'o¹▀ş■ä┘#ä►→-╠^│ú┘ ┘}²·Ì²±§o¯¸í┘°?■V→}Ñ>#O9÷í‼        !äºr
┘kv0¹╩îgÚS═¥▀­☼Ø!äû+╠^3ªìÙK?© ³%qئ3¹» ↑╣ş7¿8t"!ä►Z«0{═$│ ÿğ▼↕ÎÌC│¶æâ♦▒Í/»♠∟:æ►-Wİ¢fé┘ÀĞØv)
zZ═ÓB\╬?t"!ä►Z«0{═h│oıw─Ñx▀┤ §Q¹╔%Ç║╠C'↕íÕ
│Îî6¹▀ 5ÕR╝6ÿ▒âäÿ_■Û■[/☺T♥àC'↕íÕ
│Îî4¹®Ù¯r       `┬~Êì½%ÇC'↕íÕ
│Îì`÷   ▀¡☼«█O┘»[«¼È¹│╠eYµ▓│╠}¨9s_.¶ â╔pò╣¹ø´Ù,sÎWËô¬)┐:NR¨Án2¸6a█Ù¼-#øz¥ëeıU_³ÛX°´?Ş´­9&ŞK

başa düşüləndi 🙂
BLOB faylı database-e insert edirəm bu heç. Sual belədir:
Yalnız SQL, MySQL Stored Routine və yaxud PL\SQL və yaxud hər hansı database-də gedən (proqramlaşdırma dilindən istifadə etmədən) əməliyyat nəticəsində bu faylı geri oxuyub photo şəklində başqa bir directory-yə yaza bilərəm mi? 🙂


Yadda saxlama
Kateqoriya: Proqramlaşdırma . , . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (10 cavab var)

(22:23, 11/04/2012 ) #12434

sizin məlumatı oxuma tərziniz səhvdi axı.

SELECT * FROM blob_test;

Yuxarıdakı kod blob_test cədvəlində olan bütün qeydləri göstərir.
siz konkiret lazım olan şəkilin nəyinisə (məsələn id) bildirməlisiniz.

SELECT * FROM blob_test where id=1;

Yuxarıda id nömrəsi 1 olan qeydi seçəcək. Ancaq mən bilən mysql dilinin belə imkanı yoxduki şəkli çıxara bilsin. SQL dilin belə bir imkanı olmalıdı.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(22:32, 11/04/2012 ) #12438

Bura baxa bilərsən

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(09:38, 12/04/2012 ) #12465

Əgər mənim table-ımda cəmi bir qeyd varsa və onun İD-si 1-dirsə onda where id=1 yazmağa ehtiyac yoxdu 🙂
Məncə SQL-in belə bir imkanı yoxdur. amma pl\sql və yaxud mysql routine-lə bunu etmək olar amma necə?

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(09:46, 12/04/2012 ) #12466

Salam. Yaza bilərsiniz. Amma return edəndə header JPEG kimi vermək lazımdır, sizin kodda əsas çatmayan budur. Məsələn

<img src="image.php?id=1" alt="" />

vermisinizsə, image php faylında üst hissədə header(“Content-Type: image/jpeg”); belə bir şey olmalıdır, ardıyca da sizin mysql-dən oxuduğunuz data.
P.S. Bazada şəkli saxlamaq çox əlverişsiz bir şeydir. Ondansa sadece path-ını saxlayın, özünü faylssistemə atın.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(10:09, 12/04/2012 ) #12468

php və yaxud java-da bunu etmək olur
mən sırf database-in öz imkanları ilə bunu etmək istəyirdim 🙂 maraq üçün…

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(13:20, 12/04/2012 ) #12472

Məncə yenədə id bildirilməlidir. SQL 100% bunu bacarır. İnternetdəki məlumatlara görə MySQL da bunu edə bilir. Yuxarıdakı link də izah olunub.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(16:56, 12/04/2012 ) #12493

ID olsun ya olmasın nəticə eynidir. Əgər 50-60 dənə şəkil olsaydı mən də bilirəm ki, İD-ni qeyd etmək lazım idi ki yalnız 1 photo çıxsın. indiki halda cəmi 1 qeyd var table-da. ona görə də:
SELECT * FROM blob_test; = SELECT * FROM blob_test where id=1;
Sən verdiyin link isə documentation linkidi. 11.4.3. The BLOB and TEXT Types — BLOB və TEXT-in nə olduğunu izah edir. Orda mənim istədiyim yoxdu axı.
SQL ilə etmək olursa onda necə? MySQL Stored Routine-lə etmək olarsa o da necə? 🙂

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(19:34, 13/04/2012 ) #12556

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(19:35, 13/04/2012 ) #12557

http://stackoverflow.com/questions/4646533/exporting-blob-from-mysql-database-to-file-with-only-sql

buradan baxin

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(19:36, 13/04/2012 ) #12558

hərdən qoğal əmiyə də müraciət edin

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Software Developer cavab verdi - Wise vasitəsilə bank kartına pul köçürmə (2 saat əvvəl)

Software Developer cavab verdi - Rus dilindən mətni tərcümə etmək (18 saat əvvəl)

Cənab cavab verdi - Almanca söz bazası yığmaq (3 gün əvvəl)

rdrobert cavab verdi - Mikrofon süngərinə yazı (4 gün əvvəl)

rdrobert cavab verdi - Yerli virtual olaraq dost tapmaq platforması (4 gün əvvəl)

rdrobert cavab verdi - Almanca söz bazası yığmaq (4 gün əvvəl)

rdrobert cavab verdi - Playstation 4 almaq, Playsation klub açmaq (4 gün əvvəl)

rdrobert cavab verdi - Proqramistin ixtsasi hansidir? (4 gün əvvəl)

Software Developer cavab verdi - Azercell Kabinetim aplikasiyasında İstəSən tarifi haqqında (6 gün əvvəl)

Software Developer cavab verdi - Proqramistin ixtsasi hansidir? (6 gün əvvəl)

byshako cavab verdi - Google Azərbaycan nömrələrini qəbul etmir (16 gün əvvəl)

rdrobert cavab verdi - Honeygain, passiv gelir (17 gün əvvəl)

rdrobert cavab verdi - Xaricdən telefon getirmek (17 gün əvvəl)

rdrobert cavab verdi - Google Azərbaycan nömrələrini qəbul etmir (17 gün əvvəl)

rdrobert cavab verdi - AliExpress, Telefon, Rüsum (17 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 607 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23234 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2024