Topic: Неотображение фотографий после перехода на MySQL

Доброго времени суток, Дмитрий.
Вопрос можно отнести к переходу с SQLite на MySQL.
В базе (Уже импортированной в MySQL есть таблица "files", в которой хранятся ссылки на файлы фотографий в каждой записи. В таблице файлов ~31000 файлов. Около 30000 файлов фотографий отображаются в базе, все хорошо, однако есть ещё 1000, которые, хоть и имеют правильный путь и физический файл по этому пути - не отображаются.
Проанализировав данные файлы, а точнее пути и имена файлов я увидел следующее:
К примеру физически файл называется "FzxVccvV873.jpg"
При просмотра имени файла в таблице files в phpMyAdmin файл имеет  правильное имя -  "FzxVccvV873.jpg"
Однако при просмотре этого же файла в проекте (в TableGrid) вижу следующее имя файла -  "▫FzxVccvV873.jpg" (То есть в какой либо части имени файла стоит маленький квадратик, только при просмотре из проекта. Этот квадратик и не даёт сделать возможным отображение файла, так как имя файла уже другое...
Пытался в разных версиях своего проекта, и в другом экспортном файле, ничего не нашел. Может быть дело в MVB? Подскажете в чем проблема?

Re: Неотображение фотографий после перехода на MySQL

Приветствую.


Попробуйте для начала запустить данный SQL запрос, который удалит из базы данный символ

UPDATE `tablename` SET `file_filename`=REPLACE(`file_filename`, '▫','')

Трудна сказать, что явилось причиной появления этого символа, возможно была неверно выбрана кодировка файла при экспорте или импорте.

Dmitry.

Re: Неотображение фотографий после перехода на MySQL

На всякий случай выполнил этот запрос, но результат запроса был предсказуем - было изменено 0 значений.
Так как я уже говорил, что в самой базе MySQL  в phpMyAdmin (и ibExpert (для точности)) этого символа нет, то есть просматривая какую либо таблицу я вижу путь к файлу \\comp\folder\33398.jpg
А когда открываю тот же самый файл в проекте, то он уже выглядит как  \\comp\folder\33▫398.jpg

Re: Неотображение фотографий после перехода на MySQL

sidhillsaid wrote:

На всякий случай выполнил этот запрос, но результат запроса был предсказуем - было изменено 0 значений.
Так как я уже говорил, что в самой базе MySQL  в phpMyAdmin (и ibExpert (для точности)) этого символа нет, то есть просматривая какую либо таблицу я вижу путь к файлу \\comp\folder\33398.jpg
А когда открываю тот же самый файл в проекте, то он уже выглядит как  \\comp\folder\33▫398.jpg

Пришлите пожалуйста ваш проект на support@drive-software.com
с данными для доступа к MySQL сервера

Dmitry.

Re: Неотображение фотографий после перехода на MySQL

Хм...интересно.
Сделал чистый проект, в котором можно просматривать только фотографии.
И в нём квадратика не появляется, то есть все файлы отображаются.
Дальше пошел в свой проект и удалил большую часть скрипта, по факту выяснилось, что этот квадратик появляется при использовании этой процедуры:

procedure frmAddNewObject_TableGrid1_OnCellClick (Sender: string; ACol, ARow: Integer);
begin
frmAddNewObject.DBImage1.Clear;
frmAddNewObject.DBImage1.LoadFromDatabase('files', 'file', frmAddNewObject.tablegrid1.dbItemID);
end;

В чем может быть проблема тогда?

Re: Неотображение фотографий после перехода на MySQL

sidhillsaid
К сожалению не вижу причин, как этот скрипт может влиять на имя файла.
Пришлите ваш проект с описанием действий, чтоы увидеть эту ошибку.

Dmitry.