问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vb6.0中rs("照片").AppendChunk Chunk()的意思是什么

发布网友 发布时间:2024-10-05 21:15

我来回答

1个回答

热心网友 时间:2024-10-05 22:00

AppendChunk 方法

将数据追加到大型文本、二进制数据 Field 或 Parameter 对象。

语法

object.AppendChunk Data

参数

object Field 或 Parameter 对象

Data 变体型,包含追加到对象中的数据。

说明

使用 Field 或 Parameter 对象的 AppendChunk 方法可将长二进制或字符数据填写到对象中。在系统内存有限的情况下,可以使用 AppendChunk 方法对长整型值进行部分而非全部的操作。

字段

如果 Field 对象 Attributes 属性中的 adFldLong 位被设置为真,则可以对该字段使用 AppendChunk 方法。

在 Field 对象上的第一个 AppendChunk 调用将数据写入字段,覆盖任何现有的数据,随后的 AppendChunk 调用则添加到现有数据。如果将数据追加到一个字段,然后设置或读取当前记录中另一个字段的值,ADO 则认为已将数据追加到第一个字段。如果在第一个字段上再次调用 AppendChunk 方法,那么 ADO 将调用解释为新的 AppendChunk 操作并覆盖现有数据。访问其他 Recordset 对象(并非第一个 Recordset 对象的复制品)中的字段将不会破坏 AppendChunk 操作。

调用 Field 对象的 AppendChunk 时如果没有当前记录,将发生错误。

参数

如果 Parameter 对象 Attributes 属性中的 adFldLong 位被设置为真,则可以对该参数使用 AppendChunk 方法。

Parameter 对象上的第一个 AppendChunk 调用将数据写入参数,覆盖任何现有数据,随后 Parameter 对象上的 AppendChunk 调用可添加到现有的参数数据中。传送空值的 AppendChunk 调用则放弃所有的参数数据。

示例
下面示例说明使用 AppendChunk 和 GetChunk
方法将基于数据页的、大的二进制对象 (BLOB) 数据写入远程数据源。这段代码需要一个名为 Chunks
的表,表中带有字符、文本、以及图象域。为了建立该表,提出如下代码作为对测试数据库的查询操作:
CREATE TABLE Chunks (ID integer identity NOT NULL, PName char(10) NULL,
Description TEXT NULL,
Photo IMAGE NULL)
CREATE UNIQUE INDEX ChunkIDIndex on Chunks(ID)

一旦建立了该表,就需要一个或多个 .BMP 或其它合适的、可由 PictureBox
控件定位装入的图形图象。
'
Option Explicit
Dim en As rdoEnvironment
Dim Qd As rdoQuery
Dim Cn As rdoConnection
Dim Rs As rdoResultset
Dim SQL As String
Dim DataFile As Integer, Fl As Long, Chunks As Integer
Dim Fragment As Integer, Chunk() As Byte, I As Integer
Const ChunkSize As Integer = 16384

Private Sub Form_Load()
Set en = rdoEnvironments(0)
Set Cn = en.OpenConnection(dsname:="", _
Connect:="UID=;PWD=;DATABASE=WorkDB;" _
& ""Driver={SQL Server};SERVER=Betav486", _
prompt:=rdDriverNoPrompt)
Set Qd = Cn.CreateQuery("TestChunk", "Select * from
Chunks Where PName = ?")
End Sub
Private Sub LoadFromFile_Click()
'
' 将文件定位并为该文件设置文件名。
'
With CommonDialog1
.Filter = "Pictures(*.bmp;*.ico)|*.bmp;*.ico"
.ShowOpen
FileName = .FileName
End With
End Sub

Private Sub ReadFromDB_Click()
If Len(NameWanted) = 0 Then _
NameWanted = InputBox("Enter name wanted", "Animal")
Qd(0) = NameWanted
Set Rs = Qd.OpenResultset(rdOpenKeyset,
rdConcurRowver)
If Rs Is Nothing Or Rs.Updatable = False Then
MsgBox "Can't open or write to result set"
Exit Sub
End If
If Rs.EOF Then
MsgBox "Can't find picture by that name"
Exit Sub
End If
Description = Rs!Description
DataFile = 1
Open "pictemp" For Binary Access Write As DataFile
Fl = Rs!Photo.ColumnSize
Chunks = Fl \ ChunkSize
Fragment = Fl Mod ChunkSize
ReDim Chunk(Fragment)
Chunk() = Rs!Photo.GetChunk(Fragment)
Put DataFile, , Chunk()
For I = 1 To Chunks
ReDim Buffer(ChunkSize)
Chunk() = Rs!Photo.GetChunk(ChunkSize)
Put DataFile, , Chunk()
Next I
Close DataFile
FileName = "pictemp"
End Sub

Private Sub SaveToDB_Click()
If Len(NameWanted) = 0 Then _
NameWanted = InputBox("Enter name for this" _
& " picture", "Animal")
Qd(0) = NameWanted
Set Rs = Qd.OpenResultset(rdOpenKeyset, _
rdConcurRowver)
If Rs Is Nothing Or Rs.Updatable = False Then
MsgBox "Can't open or write to result set"
Exit Sub
End If
If Rs.EOF Then
Rs.AddNew
Rs!PName = NameWanted
If Description = "" Then _
Description = InputBox("Describe the picture", _
"Don't care")
'Rs!Description = Description
Else
Rs.Edit
End If
DataFile = 1
Open FileName For Binary Access Read As DataFile
Fl = LOF(DataFile) ' 文件中数据的长度
If Fl = 0 Then Close DataFile: Exit Sub
Chunks = Fl \ ChunkSize
Fragment = Fl Mod ChunkSize
Rs!Photo.AppendChunk Null
ReDim Chunk(Fragment)
Get DataFile, , Chunk()
Rs!Photo.AppendChunk Chunk()
ReDim Chunk(ChunkSize)
For I = 1 To Chunks
Get DataFile, , Chunk()
Rs!Photo.AppendChunk Chunk()
Next I
Close DataFile
Rs.Update
End Sub

Private Sub FileName_Change()
Picture1.Picture = LoadPicture(FileName)
End Sub

话说这是从网上拉的哦,不知道能看懂不。。。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
煤气管道改造多少钱 皮革沙发套怎么清理呢? 如何清理白色沙发 诚如神之所说游戏介绍 关于真三国无双4的一个问题 几个关于真三国无双4的问题 真三国无双4猛将传的一个小小的问题!! 真三国无双4的一点小问题! 真3国无双4猛将转问题 真三国无双4一些新手问题!请高手一一解答! 4个问题!说好的话加100... 我是陕西省的,学理科今天刚参加完高考,考了310,请问可以上陕西省建筑职... 今年高考310分,理科。我可以报那些不错的专科?我河北省的? 我同学今年考了310分,请问他能够报哪些专科学校啊,他是理科生 理科310分能够上什么专业? 广西09年理科高考分330可以进广西哪些好点的大专? 09年广西理科389分可上南宁职业技术学院哪个专业 09年理科309分能在南宁找些什么学校吗? 300分能上南宁职业技术学院?? 我是广西理科考生310分,南宁有什么好的大专? 310分能进广西南宁职业技术学院吗? 09高考313分能进南宁职业技术学院么? 今年理科三批分数310,想到杭州读专科,哪所学校好切能录取? 浙江理科310 推荐 好点的专科 学校 以及专业吧,, 我是浙江的理科 310分 女生 怎样报志愿比较好 呀 浙江310理科生 下面那些学校好阿.或者还有其他适合我的学校、 我考310分(理科) 能有什么学校能读? 浙江的 我玩的是豌豆荚版本的部落冲突,我用我自己的手机号登陆游戏,并且设置... 梦见有个女孩妈找我要我让儿子给她女儿离婚……我儿子还没有女朋友... 为什么新买的lg g3用不了网 lg g3手机root后,不能用流量上网了,求大侠? 在vb中用二进制流对图片进行存取,不知道为什么错 帮我解决vb中的picturebox问题 vb程序运行时添加照片并显示 2009武汉高考 310分能上什么学校 科龙1.5匹变频8小时耗12度电怎么回事? 【高考】280-310这个分数范围 能上大专吗(大专归大学管,但是i分数线300... 粗粮细作好消化的玉米面松饼用什么方法做出来很美味呢? 艺术硕士服装领子什么颜色 专升本一次能报考几个学校 天龙八部手游小投入大回报 战力提升攻略 梅花针放血疗法管用吗 治疗神经性皮炎方法 腾讯微博如何进行个人认证 ...是五险一金中的医疗保险吗?医疗保险的总称是什么?包括哪些类容?_百 ... 黑袍黄领是什么学士服 烟台天马相城 禾园水景的作用内涵 毕业衣服领子颜色区别 我之前交往过一个男朋友,在一起四年,但是好像不爱他。分手后,我找到爱... 2022深圳的高温补贴是几月到几月 ...了好多贷款平台都没有通过,或许是申请次数太多了,很多都是直接秒拒怎...