十万火急!!!那位高手用过libmysql.dll直接连接MySql数据库?如何将二进制文件保存到blob字段中?(40分)

S

swhl

Unregistered / Unconfirmed
GUEST, unregistred user!
先用php+mysql将文件通过web方式保存到远程的服务器的blob字段中,然后用
delphi+libmysql.dll直接连接远程MySql数据库,再将数据复制到本地的MySql数据库中。
代码如下:
[red]mysql_connect(@mysqlrecLocal, PChar(hostLocal), PChar(userLocal), PChar(passwdLocal));
retval:= mysql_select_db(@mysqlrecLocal, PChar(dbLocal));
mysql_connect(@mysqlrecServer, PChar(hostServer), PChar(userServer), PChar(passwdServer));
retval:= mysql_select_db(@mysqlrecServer, PChar(dbServer));

begin

query:= 'SELECT filename,filesize,filedata FROM image';
presultsServer:= nil;
mysql_real_query(@mysqlrecServer, pchar(query),Length(query));
presultsServer:= mysql_store_result(@mysqlrecServer);

for i:= 1 to presultsServer^.row_count do begin
prowServer:= mysql_fetch_row(presultsServer);
row:= prowServer^;

mysql_escape_string(pchar(filedata),pchar(row[2]),Length(row[2]));
query2:='insert into image(filename,filesize,filedata)values(''' + row[0] + ''',''' + row[1] + ''',' + filedata + ')';

mysql_real_query(@mysqlrecLocal,pchar(query2),length(query2));

end; // i

finally
mysql_free_result(presultsServer);
end;
end;[/red]
程序到mysql_escape_string时出错。
请教各位大富翁如何实现此功能,最好给出代码,小第刚学delphi没几天.
 
接受答案了.
 
顶部