DbServer.BLOBImport 方法 | |
将文件的内容读取为由备注字段编号标识的 BLOB。
命名空间:
XSharp.VO.SDK
程序集:
XSharp.VORDDClasses (在 XSharp.VORDDClasses.dll 中) 版本:2.22 GA
语法 VIRTUAL METHOD BLOBImport(
uField,
oFSSource
) AS LOGIC CLIPPER
[ClipperCallingConventionAttribute(new string[] { ... })]
public virtual bool BLOBImport(
__Usual uField = default,
__Usual oFSSource = default
)
查看代码参数
- uField (Optional)
- 类型:__Usual
表示数据库文件结构中字段位置的名称、编号或符号。 - oFSSource (Optional)
- 类型:__Usual
指定包含要读取 BLOB 数据的文件名称的字符串或 filespec 对象,包括可选的驱动器、目录和扩展名。
有关文件搜索和创建规则,请参阅 SetDefault() 和 SetPath()。不假定默认扩展名。
返回值
类型:
Boolean
如果成功则返回 TRUE;否则返回 FALSE。
备注
此方法尝试以共享模式打开源文件。如果文件不存在,则会引发运行时错误。
如果文件成功打开,则操作继续进行。如果由于另一个进程独占使用文件而拒绝访问,则 NetErr() 设置为 TRUE,并且数据服务的 Status 属性设置。
有关解决并发冲突的更多信息,请参阅程序员指南中的“并发控制”章节。
提示: |
---|
源文件的大小没有限制,除了您必须有足够的磁盘空间来进行复制。
|
DBServer:BLOBImport() 提供了一种将文件内容复制到备注字段作为 BLOB 数据的机制。
DBServer:BLOBImport() 与 DBServer:BLOBExport() 一起使用,以在文件和备注字段之间来回传输 BLOB 数据。
您可以将 DBServer:BLOBImport() 与各种文件类型一起使用,包括图像、文字处理文件和打印机字体。
这两种方法非常适合创建文档、图形、声音等数据库。
DBServer:BlobImport() 在成功完成后发送 NotifyFieldChange 消息。
提示: |
---|
DBServer:FieldInfo(DBS_BLOB_TYPE, uFieldPos) 将返回“C”(字符串),用于使用DBServer:BLOBImport()创建的任何备注字段。
|
示例
此示例将文字处理文档中的信息导入字段,然后使用 DBServer:BLOBGet() 提取字段的前25个字符:
1FUNCTION Populate()
2LOCAL oDBCust AS DBServer
3
4oDBCust := Customer{}
5
6DO WHILE .NOT. oDBCust:EOF
7oDBCust:GetPix("Pix", ;
8Substr(oDBCust:LastName, 1, 4) + oDBCust:CustID)
9oDBCust:Skip()
10ENDDO
11
12METHOD GetPix(cPixField, cPixFile) CLASS Customer
13LOCAL nPos
14nPos := SELF:FieldPos(cPixField)
15
16IF !SELF:BLOBImport(nPos, cPixFile)
17Alert("导入图片 " + cPixFile + " 失败!")
18ENDIF
参见