如何使用DBMS

 我来答
一骑当后
2014-12-20 · 知道合伙人数码行家
一骑当后
知道合伙人数码行家
采纳数:40298 获赞数:306446
网络、设备维护、电路、弱电检测。

向TA提问 私信TA
展开全部
BFILE包含二进制数据,所以当通过BFILE方式加载数据到CLOB/NCLOB时,Oracle不进行字符集转化。
如果字符集是可变长的,例如UTF-8或ZHS16GBK,Oracle使用UCS2存储LOB数据。所以如果想BFILE文件数据能够正确加载入数据库,那么文件需要以USC2字符集存储。
那么还有一点需要注意的是,如果以Unicode模式存储文件,那么文件会增加两个字节:
'FF
FE'.
在加载文件时我们需要跳过这两个字节。
在Windows上我们存储文件时选择Unicode方式,我输入的字符为:
test测试
Oracle BFile数据加载问题

然后我们可以加载这个文件的内容,注意比较前后两个过程不同之处:

SQL> create table t (
2 name varchar2(30),
3 content clob
4 )
5 /
Table created.
SQL>
SQL>
SQL> create or replace Directory dir1 as '/opt/oracle';
Directory created.
SQL>
SQL> declare
2 l_bfile bfile;
3 l_clob clob;
4 l_str varchar2(1000);
5 begin
6 insert into t (name,content)
7 values ('b.txt',empty_clob())
8 returning content into l_clob;
9
10 l_bfile := bfilename('DIR1','b.txt');
11
12 dbms_lob.fileopen(l_bfile);
13 dbms_lob.loadfromfile(l_clob,l_bfile,dbms_lob.getlength(l_bfile));
14 dbms_lob.fileclose(l_bfile);
15 commit;
16 exception when others then
17 l_str:=sqlerrm(sqlcode);
18 dbms_output.put_line(l_str);
19 end;
20 /
PL/SQL procedure successfully completed.
SQL> select * from t;
NAME CONTENT
------------------------------ ----------------------------------------------
b.txt ?test测试
Oracle BFile数据加载问题
研究
SQL>
SQL> declare
2 l_bfile bfile;
3 l_clob clob;
4 l_str varchar2(1000);
5 begin
6 insert into t (name,content)
7 values ('b.txt',empty_clob())
8 returning content into l_clob;
9
10 l_bfile := bfilename('DIR1','b.txt');
11
12 dbms_lob.fileopen(l_bfile);
13 dbms_lob.loadfromfile(l_clob,l_bfile,dbms_lob.getlength(l_bfile)-2,
14 src_offset => 3);
15 dbms_lob.fileclose(l_bfile);
16 commit;
17 exception when others then

18 l_str:=sqlerrm(sqlcode);
19 dbms_output.put_line(l_str);
20 end;
21 /
PL/SQL procedure successfully completed.
SQL> select * from t;
NAME CONTENT
------------------------------ --------------------------------------
b.txt ?test测试
Oracle BFile数据加载问题
研究
b.txt test测试
Oracle BFile数据加载问题
研究
转载,仅供参考。
AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
射手陈晓晓
撸铁爱好者

2016-02-20 · 管理身体,健康生活
知道大有可为答主
回答量:1.5万
采纳率:91%
帮助的人:7599万
展开全部
  数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。
  它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。大部分DBMS提供数据定义语言DDL(Data Definition Language)和数据操作语言DML(Data Manipulation Language),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。
  数据库管理系统是数据库系统的核心,是管理数据库的软件。数据库管理系统就是实现把用户意义下抽象的逻辑数据处理,转换成为计算机中具体的物理数据处理的软件。有了数据库管理系统,用户就可以在抽象意义下处理数据,而不必顾及这些数据在计算机中的布局和物理位置。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式