Имеется код вставки в БД:
procedure TQueryThread.Execute;
begin
FMyConn := TMyConnection.Create(nil);
FMyConn.Server := IniParams.pServer;
FMyConn.Port := StrToInt(IniParams.pPort);
FMyConn.Database := IniParams.pDatabase;
FMyConn.Username := 'address';
FMyConn.Password := 'xxx';
FMyConn.Connected := true;
qFileBlob := TMyQuery.Create(nil);
qFileBlob.Connection := FMyConn;
qFileBlob.SQL.Clear;
qFileBlob.SQL.Add('INSERT INTO attachment (address_id,file_blob,create_date,file_name,file_extension,description) values (:pAddressID,:pFileBlob,:pCreateDate,:pFileName,:pFileExtension,:pDescription)');
qFileBlob.ParamByName('pAddressID').AsInteger := FAddressID;
qFileBlob.ParamByName('pFileBlob').LoadFromFile(FName, ftBlob);
qFileBlob.ParamByName('pCreateDate').AsDate := FCreateDate;
qFileBlob.ParamByName('pFileName').AsString := ExtractFileName(FName);
qFileBlob.ParamByName('pFileExtension').AsString := ExtractFileExt(FName);
qFileBlob.ParamByName('pDescription').AsString := FDescription;
qFileBlob.Execute;
Synchronize(DisplayMessage);
end;
Суть в том, что при попытке вставки в базу данных за пределами локальной сети файлов более 16Мб получаем ошибку:
Данная ошибка отсутствует при вставке Blob поля внутри локальной сети независимо от размера вставляемого файла.
На момент ошибки имеем:
SHOW VARIABLES LIKE 'max_allowed_packet'
mysql> show variables like "max_allowed_pa
-> ;
+--------------------+-----------+
| Variable_name | Value |
+--------------------+-----------+
| max_allowed_packet | 524288000 |
+--------------------+-----------+
В чем может быть проблема?
Ваша проблема в опции max_allowed_packet у которой, в вашем случае, выставлено значение 16 Mб. Если вам нужно вставлять блобы большего размера, измените настройки сервера:
[mysqld]
max_allowed_packet=64M
Верхняя граница - 1Гб.
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Мне нужно, совместить данные из двух таблиц вот как выглядит схема
Всем привет) У меня такая задача: С активности я запускаю подгрузку одного JSON-чика по кнопке через AsynkTaskМне нужно запустить прогрессбар, сделать,...
Сетевое взаимодействие по протоколу ТСР /IP подходит для большинства сетевых нуждОно обеспечивает сериализируемые, предсказуемые и надежные...