必须搞清楚以下概念:
1. 一个工作区只能打开一个表
2. 一个表可以在多个工作区打开(可以使用 USE 命令的 AGAIN 选项)
3. 工作区隶属于“工作期”。当表单设置为私有数据工作期时,表单的每个实例都有自己的工作期,而每个工作期都有32767个工作区。
4. 使用 set("DataSession")可以知道当前的工作期编号,使用 select()函数可知道当前的工作区编号
5. 使用 use <表> in 0 可以在一个最小的空闲工作区打开表,但并不切换工作区
6. 使用 select 0 命令可以切换到一个最小的空闲工作区,使用 select()可返回当前工作区的编号,select(0)返回最小的空闲工作区编号,select(1)返回最大的空闲工作区编号
7. 通过判断 alias()的返回值是否为空,可以知道一个工作区是否有表打开
8. 通过判断 used()的返回值,可以知道一个表是否被打开,通过判断 select("表别名")的返回值可以知道一个表在哪个编号的工作区打开
……