在form开发中实现在数据库中存储图片,数据库表名属于自己创建,读者需要根据自己需要修改![@more@]
DECLARE
FILE_NAME VARCHAR2(120);
IMAGE_TYPE VARCHAR2(10);
I INTEGER; PNUM INTEGER := 0;
wjm varchar2(200);
BEGIN
:wjzl.wjbh := :global.wjbh;
IF :wjzl.YH IS NOT NULL THEN message('请选择一空页');
go_block('wjzl');
return;
END IF;
file_name := Win_Api_Dialog.Open_File('请选择一图形文件','','BMP文件 (*.BMP)|*.BMP|GIF文件(*.GIF)|*.GIF|TIF文件(*.TIF)|*.TIF|All files(*.*)|*.*|',TRUE,WIN_API.OFN_FLAG_DEFAULT,FALSE);
IF FILE_NAME IS NOT NULL THEN I := INSTR(FILE_NAME,'.',1,1);
IF I IS NOT NULL THEN IMAGE_TYPE:= SUBSTR(FILE_NAME,I+1,3);
IF (IMAGE_TYPE='TIF') THEN IMAGE_TYPE := IMAGE_TYPE ||'F';
END IF;
wjm := :global.wjbh||:wjzl.yh||'.'||IMAGE_TYPE;
Win_Api_Utility.Copy_File(file_name,'i:dayjscan'||wjm,FALSE,FALSE);
Copy('i:dayjscan'||wjm,'wjzl.dz');
Read_Image_File( 'i:dayjscan'||wjm, IMAGE_TYPE, 'wjzl.YNR');
SELECT MAX(YH) INTO PNUM FROM wjzl WHERE wjbh = :wjzl.wjbh;
IF PNUM IS NULL THEN PNUM := 1;
ELSE
PNUM := PNUM + 1;
END IF;
COPY(TO_CHAR(PNUM),'wjzl.yh');
commit;
go_block('wjzl');
END IF;
END IF;
END;