Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да използвам LOAD_FILE за зареждане на файл в MySQL blob?

ръководството посочва следното:

LOAD_FILE(име_на_файл)

Чете файла и връща съдържанието на файла като низ. За да използвате тази функция, файлът трябва да се намира на хоста на сървъра, трябва да посочите пълното име на пътя към файла и трябва да имате FILEprivilege. Файлът трябва да бъде четим от всички и размерът му е по-малък от max_allowed_packet байтове. Ако системната променлива secure_file_priv е зададена на име на непразна директория, файлът, който ще бъде зареден, трябва да бъде локализиран в тази директория.

Ако файлът не съществува или не може да бъде прочетен, защото едно от предходните условия не е изпълнено, функцията връща NULL.

От MySQL 5.0.19 системната променлива character_set_filesystem контролира тълкуването на имената на файлове, които са дадени като литерални низове.

mysql> UPDATE t
            SET blob_col=LOAD_FILE('/tmp/picture')
            WHERE id=1;

От това виждам повече от едно нещо, което може да не е наред във вашия случай...

  • преминавате ли пълния път?
  • правилно ли са зададени правата?
  • какво връща функцията? NULL?
  • изпробвали ли сте го със заявката, дадена в ръководството?


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Има ли недостатъци при използването на общ varchar(255) за всички текстови полета?

  2. MySQL RAND() Функция – Генериране на произволно число в MySQL

  3. Бърз лесен начин за мигриране на SQLite3 към MySQL?

  4. 3 начина да откриете дали низ съответства на регулярен израз в MySQL

  5. MySQL - Използване на COUNT(*) в клаузата WHERE