Salut tout le monde,

Une aide pour pour le type blob :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
create directory logodir as 'd:\logodir';
grant read on directory logodir to public ;
-------------------------------
select * from all_directories;
------------------------------------
create table logosupport
(
idlogosupport number, 
imagelogo blob, 
nom varchar2(240)
);
-------------------------------
create or replace
procedure load_file (
pdname number,
psname varchar2,
pfname varchar2) is
src_file bfile;
dst_file blob;
lgh_file binary_integer;
begin
src_file := bfilename('LOGODIR', pfname); 
insert into logosupport
(idlogosupport, imagelogo, nom)
values
(pdname, empty_blob(), pfname)
returning imagelogo into dst_file;
dbms_lob.fileopen(src_file, dbms_lob.file_readonly);
lgh_file := dbms_lob.getlength(src_file);
dbms_lob.loadfromfile(dst_file, src_file, lgh_file);
dbms_lob.fileclose(src_file);
end load_file;
/
---------------------------------------------------------------
execute load_file(1, 'd:/logodir/1.jpg', '1.jpg')
 
SQL> execute load_file(1, 'd:/logodir/1.jpg', '1.jpg'); 
 
Procédure PL/SQL terminée avec succès.
 
SQL> select * from logosupport; 
SP2-0678: La colonne ou le type d'attribut ne peuvent être affichés par SQL*Plus
SQL>