DbServer.BLOBDirectGet 方法 | |
检索存储在 BLOB 文件中的数据,而无需引用特定字段。
命名空间:
XSharp.VO.SDK
程序集:
XSharp.VORDDClasses (在 XSharp.VORDDClasses.dll 中) 版本:2.22 GA
语法 VIRTUAL METHOD BLOBDirectGet(
nPointer AS LONG,
nStart AS LONG,
nCount AS LONG
) AS USUAL
public virtual __Usual BLOBDirectGet(
int nPointer,
int nStart,
int nCount
)
查看代码参数
- nPointer
- 类型:Int32
指向 BLOB 数据的指针。此指针可以使用 DBServer:BLOBDirectPut()、DBServer:BLOBDirectImport() 或 DBServer:FieldInfo(DBS_BLOB_POINTER,
nFieldPos) 获取。
- nStart
- 类型:Int32
nPointer中的起始位置。如果 nStart 为正,则起始位置相对于
nPointer中的最左字符。如果 nStart 为负,
则相对于 nPointer 中的最右字符。如果省略 nStart,则假定为1。
- nCount
- 类型:Int32
从 nStart 开始检索的数据字节数。
如果 nCount 大于存储的数据量,则多余的数据将被忽略。
如果省略,DBServer:BLOBDirectGet() 将检索到数据的末尾。
返回值
类型:
__Usual
从 BLOB 文件中检索到的数据。返回值的数据类型取决于实际存储的数据。使用 ValType() 或 UsualType() 确定数据类型。
备注 提示: |
---|
nStart 和 nCount 仅适用于字符串数据。对于任何其他数据类型,它们将被忽略。
|
DBServer:BLOBDirectGet() 检索存储在 BLOB 文件中的数据,而无需引用数据服务中的特定字段。
当访问大于64KB的数据时(例如使用 BLOBImport() 方法创建的备注字段),它特别有用。
示例
此示例说明如何在 BLOB 文件中存储设置信息,然后有选择地检索存储的信息:
1FUNCTION PutSettings(aColors AS ARRAY, aPaths AS ARRAY, aPW AS ARRAY) AS VOID
2LOCAL aSettings AS ARRAY
3LOCAL oDBSetup AS DBServer
4
5oDBSetup := Setup{}
6aSettings := {}
7AAdd(aSettings, oDBSetup:BLOBDirectPut(0, aColors))
8AAdd(aSettings, oDBSetup:BLOBDirectPut(0, aPaths))
9AAdd(aSettings, oDBSetup:BLOBDirectPut(0, aPW))
10oDBSetup:BLOBRootPut(aSettings)
11oDBSetup:Close()
12
13FUNCTION GetColors() AS ARRAY
14LOCAL aSettings AS ARRAY
15LOCAL aColors AS ARRAY
16LOCAL oDBSetup AS DBServer
17
18oDBSetup := Setup{}
19aSettings := oDBSetup:BLOBRootGet()
20aColors := oDBSetup:BLOBDirectGet(aSettings[1])
21oDBSetup:Close()
22
23RETURN aColors
参见