Functions.DbTrans 方法 | |
将记录传输到打开的数据库文件。
命名空间:
XSharp.RT
程序集:
XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法 FUNCTION DbTrans(
wTarget,
aStruct,
cbForCondition,
cbWhileCondition,
nNext,
nRecord,
lRest
) AS LOGIC CLIPPER
[ClipperCallingConventionAttribute(new string[] { ... })]
public static bool DbTrans(
__Usual wTarget = default,
__Usual aStruct = default,
__Usual cbForCondition = default,
__Usual cbWhileCondition = default,
__Usual nNext = default,
__Usual nRecord = default,
__Usual lRest = default
)
查看代码参数
- wTarget (Optional)
- 类型:__Usual
目标文件的工作区编号。 - aStruct (Optional)
- 类型:__Usual
包含字段描述的数组,格式与 DBStruct() 返回的格式相同。
该数组包含源文件的结构。
- cbForCondition (Optional)
- 类型:__Usual
定义范围内每条记录必须满足的条件的代码块,以便进行处理。 - cbWhileCondition (Optional)
- 类型:__Usual
定义每条记录必须满足的另一个条件的代码块,以便进行处理。 一旦遇到导致条件失败的记录,操作就会终止。
如果未指定范围,cbWhileCondition 会将默认范围更改为 lRest。
您可以使用这三个互斥参数之一来定义范围。
默认是所有记录。
- nNext (Optional)
- 类型:__Usual
要处理的记录数,从 nRecord 开始。 指定 0 以忽略此参数。 - nRecord (Optional)
- 类型:__Usual
要处理的单个记录号。指定 0 以忽略此参数。 - lRest (Optional)
- 类型:__Usual
TRUE 仅处理从 nStart 到文件末尾的记录。 FALSE 处理所有记录。
返回值
类型:
Boolean
如果成功则返回 TRUE;否则返回 FALSE。
备注 提示: |
---|
nNext、nRecord 和 lRest 参数是互斥的。您不应同时传递这三个参数。
如果您传递 cbWhile 参数,那么它也会控制范围行为。
|
DBTrans() 将记录从一个工作区复制到另一个打开的数据库文件。
默认情况下,此函数在当前选定的工作区上操作。
可以通过在别名表达式中指定来使其在未选定的工作区上操作。
提示: |
---|
已删除的源记录:
如果 SetDeleted() 为 FALSE,记录会被复制;但是,已删除的记录不会保留其已删除状态。无论源文件中的状态如何,目标文件中的记录都不会被标记为删除。
如果 SetDeleted() 为 TRUE,已删除的记录不会被复制到目标数据库文件。同样,在复制过程中会忽略经过过滤的记录,它们不会包含在目标文件中。
|
示例
以下示例将 TESTFROM.DBF 文件的内容追加到 TESTTO.DBF:
1USE testto
2IF !Used()
3 ? "打开 TESTTO.DBF 时出错"
4ELSE
5 siTo := VODBGetSelect()
6 USE testfrom NEW
7 IF !Used()
8 ? "打开 TESTFROM.DBF 时出错"
9 ELSE
10 siFrom := VODBGetSelect()
11 aStruct := DBStruct()
12 DBTrans(siTo, aStruct)
13 CLOSE
14 DBSetSelect(siTo)
15 ENDIF
16 CLOSE
17ENDIF
参见