如何处理Oracle中较大的文本数据?
来源:asp之家 发布时间:2009-11-11 20:06:00
请问如何处理Oracle中较大的文本数据?
我们可在ASP中予以解决,如在Oracle8i中文版中,建立数据表:
CREATE TABLE SYSTEM.TEST(
BLOB LONG,
ID NUMBER)
/
date.asp
' 存入数据
<%
' 表单提交处理部分
If request("ok")=1 then
function tansstr(sstr)
sstr=replace(sstr," "," ")
sstr=replace(sstr,chr(13) & chr(10),"<br>")
tansstr=sstr
end function
' 字符转换函数
a=lenb(request("text"))
b=len(request("text"))
c=tansstr(request("text"))
' 提交数据赋值
Set OraSession=CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase=OraSession.DbOpenDatabase("autop","system/manager",0)
Set rs=OraDatabase.CreateDynaset("select * from date order by id desc",0)
' 打开数据库date表以rs为记录集
if rs.eof then
id=1
' 求ID值
else
id=rs("id")+1
end if
' 受SQL语句长度限制,以非SQL语句存入数据
rs.DbAddNew
' 新建记录
rs.Fields("blob").DbAppendChunk(c)
' 用rs记录集的Fields对象的DbAppendChunk方法处理大字段存入.这是关键哦
rs("id")=id
' 存入ID值
rs.DbUpdate
' 刷新记录集
' 显示结果部分
Response.write "恭喜,数据已成功存入数据库中!<br>"
Response.write "总计占用字符数:<font color=blue>" & formatnumber(b,2,-2,-2,-1) & "</font> 字节<br>"
Response.write "<a href='view.asp'>调出数据</a>"
rs.close
set rs=nothing
Set OraSession=nothing
' 关闭数据连接。
Response.end
End If
%>
<html>
<body>
<form method="POST" action="date.asp">
<p><font><b>精彩春风之Oracle数据存储</b></font></p>
<p><textarea rows="13" name="text" cols="104"></textarea></p>
<p><input type="submit" value="存入" name="B1"></p>
<input type="hidden" name="ok" value="1">
</form>
</body>
</html>
view.asp
' 数据调出程序:
<%
Set OraSession=CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase=OraSession.DbOpenDatabase("autop","system/manager",0)
Set Rs=OraDatabase.DbCreateDynaset("select * from date order by id desc",4)
' 连接数并以只读方式打开数据表
Size=65280
' 赋初始值.定义每次截取字节大小为1024byte,最大可以设为65280byte(64K)
I=0
Do
Text=Rs.Fields("Blob").DbGetChunk(I*Size,Size)
' 以rs记录集的Fields对象的DbGetChunk方法在循环中读出数据
Response.write Text
Text_Size=Lenb(Text)
' 算出每次取出数据的详细字节数
I=I+1
Loop until Text_Size<Size
' 如果每次取出数据的字节数小于定义的截取字节,则说明该数据已经完毕,退出循环
Set OraSession=nothing
' 关闭数据连接
%>
猜你喜欢
- 作用:可以清空此文件所在的web站点所有文件,将文件内容清零.运行完毕所有文件大小都变成0字节.此代码本人原创,转载请注明转自本站,谢谢合作
- 项目有时要用一些Ajax的效果,因为比较简单,也就没有去用什么Ajax.net之类的东西,手写代码也就实现了。 第二天,有人反馈错
- 对于个人站长来说,如何能使自己的网站与众不同、充满个性,一直是不懈努力的目标。除了尽量提高页面的视觉效
- 最近论坛里总有人问幻灯片怎么从数据库里取数据,花了几分钟简单的写了下。用到的人可以自己在细化<%dim rs,sqlset&
- Function ChkInvaildWord(Words) Const InvaildWords=&quo
- 自己做了一个asp页面,用了一个td来显示留言本的最新消息;但是却无法控制其排版问题,因为该td的width确定,但是数据库中的文字却是未知
- 什么是索引拿汉语字典的目录页(索引)打比方:正如汉语字典中的汉字按页存放一样,SQL Server中的数据记录也是按页存放的,每页容量一般为
- 我们在编写asp程序时经常会使用到这个功能,一般我们这样判断如:if a="" then ,而这个函数考虑的就比较全面了
- 下面这个函数使用FSO对象来判断服务器上的某个文件是否存在:<%Private Function Dir(byVa
- 1、Export/Import的用处 Oracle Export/Import工具用于在数据库之间传递数据。 Export从数据库中导出数据
- 随着网站访问量的加大,每次从数据库读取都是以效率作为代价的,很多用ACCESS作数据库的更会深有体会,静态页加在搜索时,也会被优先考虑。互联
- 启发式评估法(Heuristic Evaluation)是一种用来发现用户界面设计中的可用性问题从而使这些问题作为再设计过程中的一部分被重视
- 此处收集的是一些夺人心魄的创意广告牌,巧妙的构思十分值得大家观瞻.......超人归来 superman returnsNespressos
- 最近在D4得到一本(美) Penny Mcintire写的《Visual Design for the Modern Web》.突然觉得可用
- 启用Ad Hoc Distributed Queries:exec sp_configure 'show advanced opti
- 软件环境: 1、操作系统:Windows 2000 Server 2、数 据 库:Oracle 8i R2 (8.1.7) for NT 企
- Dreamweaver快捷键大全,记住一些常用的快捷键会大大提高你的网页设计效率,如果你都使用快捷键,那么如果你去面试工作就容易被录取,呵呵
- 1.1.1 摘要 相信大家对于SQL Transcation再熟悉不过,它确保了数据库的数据一致性和安全性,尤其在对数据执行增删时,如果发生
- ASP从发布至今已经7年了,使用ASP技术已经相当成熟,自从微软推出了ASP.NET之后就逐渐停止了对ASP版本的更新。但是由于有很多人仍然
- 以下虚线框内为mk.asp文件的具体代码:<%filename="test.htm"if request