Armazenar arquivos mp3 em banco de dados firebird
Alguém sabe como faço para armazenar arquivos mp3 em banco de dados firebird. Eu gostaria de fazer isso utilizando os componentes da paleta interbase. Desde já agradeço
[color=green:737f662c98]Movido de Delphi para Interbase/Firebird[/color:737f662c98]
[color=green:737f662c98]Movido de Delphi para Interbase/Firebird[/color:737f662c98]
Eurismar
Curtidas 0
Respostas
Fsflorencio
23/08/2005
Olá.
Eu utilizo um campo BLOB.
Para usar você precisa de um stream para armazenar este mp3.
faça + ou - assim:
//gravando blob[b:ab5c9869bc]
var stream : TMemoryStream;
begin
stream := tmemorystream.create;
stream.loadfromfile( ´c:\arquivo.mp3´ );
ibsql.sql.text := ´UPDATE TABELA SET CAMPO_TIPO_BLOB = :CONTEUDO WHERE CONDICAO´;
TBlobField( IBSQL.parambyname( ´CONDICAO´ ) ).LoadFromStream( Stream );
ibsql.execsql;
stream.free;
end;[/b:ab5c9869bc]
//carregando blob
[b:ab5c9869bc]var stream : TMemoryStream;
begin
stream := tmemorystream.create;
ibsql.sql.text := ´SELECT CAMPO_TIPO_BLOB FROM TABELA WHERE CONDICAO´;
ibsql.execsql;
TBlobField( IBSQL.Fieldbyname( ´CAMPO_TIPO_BLOB´ ) ).SavetoStream( Stream );
stream.savetofile( ´c:\arquivo.mp3´ );
stream.free;
end;[/b:ab5c9869bc]
Acho que é por aí... Dá uma depurada, q pode ter algum errinho.
t+
Eu utilizo um campo BLOB.
Para usar você precisa de um stream para armazenar este mp3.
faça + ou - assim:
//gravando blob[b:ab5c9869bc]
var stream : TMemoryStream;
begin
stream := tmemorystream.create;
stream.loadfromfile( ´c:\arquivo.mp3´ );
ibsql.sql.text := ´UPDATE TABELA SET CAMPO_TIPO_BLOB = :CONTEUDO WHERE CONDICAO´;
TBlobField( IBSQL.parambyname( ´CONDICAO´ ) ).LoadFromStream( Stream );
ibsql.execsql;
stream.free;
end;[/b:ab5c9869bc]
//carregando blob
[b:ab5c9869bc]var stream : TMemoryStream;
begin
stream := tmemorystream.create;
ibsql.sql.text := ´SELECT CAMPO_TIPO_BLOB FROM TABELA WHERE CONDICAO´;
ibsql.execsql;
TBlobField( IBSQL.Fieldbyname( ´CAMPO_TIPO_BLOB´ ) ).SavetoStream( Stream );
stream.savetofile( ´c:\arquivo.mp3´ );
stream.free;
end;[/b:ab5c9869bc]
Acho que é por aí... Dá uma depurada, q pode ter algum errinho.
t+
GOSTEI 0