如何通过SQL*Plus在Oracle 11g数据库中插入Blob数据类型值

use*_*677 3 blob sqlplus oracle11g

我创建了一个包含Blob数据类型的表,但我不知道如何使用SQL*Plus将值插入表中或查看表内容.请帮我.

Nae*_*dov 6

这取决于您希望将哪种数据放入BLOB.我们考虑一下这个表:

create table b1(id number , b blob);
Run Code Online (Sandbox Code Playgroud)

如果您的数据表示为十六进制字符串,则应使用TO_BLOB函数

insert into b1 values(1,to_blob('FF3311121212EE3a'));
Run Code Online (Sandbox Code Playgroud)

SQLPLUS还将BLOB显示为十六进制字符串

select * from b1;

----- -----------------------------------
   ID                                   B
----- -----------------------------------
    1 FF3311121212EE3A
Run Code Online (Sandbox Code Playgroud)

请参阅有关使用LOB的 Oracle文档

  • 请看[this](http://www.idevelopment.info/data/Oracle/DBA_tips/LOBs/LOBS_10.shtml)如果文件存储在**CREATE DIRECTORY**描述的文件夹中的服务器上,则可以使用DBMS_LOB包读取文件并将其放入表中.关于JSP,我认为有两种方法.1)只提取到web服务器可访问的文件夹,并将URL提供给客户端.2)加载文件并直接将其作为http响应返回.见[examlpe](http://www.theserverside.com/discussions/thread.tss?thread_id=33374) (3认同)