点击或拖拽改变大小

Functions.DbAppend 方法

X#
向数据库文件添加新记录。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION DbAppend(
	lReleaseLocks,
	uArea
) AS LOGIC CLIPPER
查看代码

参数

lReleaseLocks (Optional)
类型:__Usual
一个逻辑数据类型,如果为 TRUE,则清除所有待处理的记录锁,然后追加下一条记录。
如果为 FALSE,则保持所有待处理的记录锁,并将新记录添加到锁定列表的末尾。
默认值为 TRUE。
uArea (Optional)
类型:__Usual
指定要从中检索值的表的工作区名称或编号。

返回值

类型:Boolean
如果成功则返回 TRUE;否则返回 FALSE。
如果成功添加,记录中的每个字段都将设置为其数据类型的空值,并且新记录成为当前记录。
备注
默认情况下,此函数在当前选定的工作区中的数据库文件上操作。
通过在别名表达式中指定,可以使其在未选定的工作区上操作。 DBAppend(TRUE) 执行与 APPEND BLANK 命令相同的功能。
有关更多信息,请参阅 APPEND BLANK。
提示 提示:
逻辑记录:DBAppend() 不遵循逻辑可见性。
也就是说,如果记录成功添加,它将成为当前记录,无论任何顺序或过滤条件如何。 共享模式:
对于共享数据库,DBAppend() 自动在新记录上放置记录锁。
如果无法锁定记录,NetErr() 将设置为 TRUE,表示记录未添加,并继续执行。
示例
以下示例追加一条空白记录,检查 NetErr() 条件,并更新数据:
X#
 1DBUseArea(TRUE, "DBFNTX", "sales", "Sales", ;
 2                TRUE)
 3... <paramref name="Statements" />
 4DBAppend()
 5IF !NetErr()
 6    Sales->FirstName := cFirst
 7    Sales->LastName := cLast
 8ELSE
 9    QOut("追加操作失败")
10ENDIF
以下示例首先锁定一条记录,然后在不释放当前锁定列表中的记录锁的情况下向 SALES 数据库追加一条空白记录。
它还检查错误:
X#
1USE sales NEW
2DBRLock()        // 锁定当前记录
3// 添加新记录但保持旧锁
4IF DBAppend(FALSE) .AND. !NetErr()
5    ? "多条记录被锁定"
6ELSE
7    ? "发生错误!"
8ENDIF
参见