点击或拖拽改变大小

DbServer.BLOBDirectPut 方法

X#
将数据放入 BLOB 文件中,而无需引用特定字段。

命名空间:  XSharp.VO.SDK
程序集:  XSharp.VORDDClasses (在 XSharp.VORDDClasses.dll 中) 版本:2.22 GA
语法
 VIRTUAL METHOD BLOBDirectPut(
	nPointer AS LONG,
	uBlob AS USUAL
) AS USUAL
查看代码

参数

nPointer
类型:Int32
对先前存储的 BLOB 数据的引用。 此引用可以使用 DBServer:BLOBDirectPut()、DBServer:BLOBDirectImport() 或 DBServer:FieldInfo(DBS_BLOB_POINTER, nFieldPos) 获取。如果不为0,则 uBLOB 替换 nOldPointer 引用的数据; 否则,uBLOB 将添加到 BLOB 文件的当前内容中。 重要!如果指定,DBServer:BLOBDirectPut() 会释放与 nOldPointer 关联的空间,以供其他数据重用。 因此,在将其作为参数传递给此方法后,使用 nOldPointer 与任何 BLOB 方法一起使用是非法的。使用方法的返回值来引用新存储的数据。
uBlob
类型:__Usual
您要放入 BLOB 文件中的数据。uBLOB 可以是任何 X# 常用数据类型,代码块和对象除外。

返回值

类型:__Usual
指向uBLOB数据的数字指针。
备注
DBServer:BLOBDirectPut() 存储可变长度的 BLOB 数据,而无需与数据服务中的特定备注字段建立链接。 使用 DBServer:BLOBDirectPut() 将数据添加到 BLOB 文件后,您应存储方法的返回值,因为这是访问 BLOB 文件中数据的唯一方法。 由您(开发人员)提供此引用的永久存储(请参阅 DBServer:BLOBRootPut())。
示例
此示例说明如何在 BLOB 文件中存储设置信息,然后有选择地检索存储的信息:
X#
 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
参见