Functions.BLOBRootPut 方法 | |
在 BLOB 文件的根区域存储数据。
命名空间:
XSharp.RT
程序集:
XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法 FUNCTION BLOBRootPut(
uBLOB
) AS USUAL CLIPPER
[ClipperCallingConventionAttribute(new string[] { ... })]
public static __Usual BLOBRootPut(
__Usual uBLOB = default
)
查看代码参数
- uBLOB (Optional)
- 类型:__Usual
您想要放入 BLOB 文件根区域的数据。uBLOB 可以是任何 X# 常用数据类型,除了代码块和对象。
返回值
类型:
__Usual
如果成功则返回 TRUE;否则返回 FALSE。
备注
BLOBRootPut() 允许将一个 — 且仅一个 — 数据片段存储到 BLOB 文件的根区域(这一数据片段没有大小限制)。
存储新数据后,BLOBRootPut() 会释放与之前存储在 BLOB 文件根区域的任何数据相关的空间。
默认情况下,此函数在当前选定的工作区上操作。
可以通过在别名表达式中指定来使其在未选定的工作区上操作。
注意:因为根数据不引用数据库文件中的特定记录,DBRLock() 不会保护这个根存储引用。
因此,如果数据库文件以共享模式打开,您应该在调用 BLOBRootPut() 之前使用 BLOBRootLock()。
示例
此示例使用 BLOBRootPut() 在修改后将系统设置存储到 BLOB 文件:
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
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
参见