点击或拖拽改变大小

Functions.BLOBRootPut 方法

X#
在 BLOB 文件的根区域存储数据。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION BLOBRootPut(
	uBLOB
) AS USUAL CLIPPER
查看代码

参数

uBLOB (Optional)
类型:__Usual
您想要放入 BLOB 文件根区域的数据。uBLOB 可以是任何 X# 常用数据类型,除了代码块和对象。

返回值

类型:__Usual
如果成功则返回 TRUE;否则返回 FALSE。
备注
BLOBRootPut() 允许将一个 — 且仅一个 — 数据片段存储到 BLOB 文件的根区域(这一数据片段没有大小限制)。
存储新数据后,BLOBRootPut() 会释放与之前存储在 BLOB 文件根区域的任何数据相关的空间。 默认情况下,此函数在当前选定的工作区上操作。
可以通过在别名表达式中指定来使其在未选定的工作区上操作。
注意:因为根数据不引用数据库文件中的特定记录,DBRLock() 不会保护这个根存储引用。
因此,如果数据库文件以共享模式打开,您应该在调用 BLOBRootPut() 之前使用 BLOBRootLock()。
示例
此示例使用 BLOBRootPut() 在修改后将系统设置存储到 BLOB 文件:
X#
 1FUNCTION UpdateSettings()
 2    LOCAL aSettings AS ARRAY
 3    USE customer NEW SHARED VIA "DBFCDX"
 4    IF BLOBRootLock()
 5        // 获取任何现有设置
 6        aSettings := BLOBRootGet()
 7        IF EMPTY(aSettings)
 8            // 此函数将用默认数据填充 aSettings
 9            aSettings := GetDefaultSettings()
10        ENDIF
11        // 此函数将允许用户修改设置
12        IF ModifySettings(aSettings)
13            // 最后,存储设置
14            BLOBRootPut(aSettings)
15        ENDIF
16        BLOBRootUnLock()
17    ELSE
18        aSettings := {}
19        Alert("无法获取根区域的锁")
20    ENDIF
21    CLOSE
22    RETURN aSettings
参见