将blob图片保存到数据库而不存储到高清

时间:2012-01-31 19:16:37

标签: coldfusion blob

我在coldfusion中有一个base64图片字符串。

如何在不存储到filedisk的情况下将此图像blob保存到数据库中? 我的功能。

<cfset base64string="base64picturestring">
<cfimage source="#ImageReadBase64("data:image/png;base64,#base64string#")#"
destination="c:\picture.png" action="write" overwrite="true">
<cffile action="readbinary" file="c:\picture.png" variable="ImageData"/>

INSERT INTO imagedb (imageblob)
VALUES (<cfqueryparam cfsqltype="cf_sql_blob" value="#ImageData#" />)

但我不想将图像保存在硬盘上。 我需要这个。

的base64 ---- ---- imageblob数据库

任何帮助?

2 个答案:

答案 0 :(得分:2)

您可以使用内存中的文件系统:

http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSe9cbe5cf462523a0-70e2363b121825b20e7-8000.html#WSe9cbe5cf462523a0-540771bc12182683461-8000

<cfset base64string="base64picturestring">
<cfimage source="#ImageReadBase64("data:image/png;base64,#base64string#")#"
destination="ram://src/picture.png" action="write" overwrite="true">
<cffile action="readbinary" file="ram://src/picture.png" variable="ImageData"/>
<cffile action="delete" source = "ram://src/picture.png"> 

INSERT INTO imagedb (imageblob)
VALUES (<cfqueryparam cfsqltype="cf_sql_blob" value="#ImageData#" />)

答案 1 :(得分:0)

ToBinary('#yourString#')

计算Base64编码数据的二进制表示