create()

阅读(852) 标签: create,

本章介绍create()函数的多种用法。

create()

描述:

创建空序表

语法:

create(Fi,…)

备注:

产生以Fi,…为字段的空序表

参数:

Fi

字段名

返回值:

空序表

示例:

 

A

 

1

=create(id,name,sex)

create( # F i ,… )

描述:

创建含有键的空序表

语法:

create(#Fi,…) 

备注:

产生以Fi,…为字段的空序表,带有#的字段名被认为是键

参数:

Fi

字段名

返回值:

空序表

示例:

 

A

 

1

=create(#id,#name,gender)

id ,name 两个字段为键。

f.create()

描述:

打开已经存在的组表

语法:

f.create()

打开不带密码的已经存在的组表

f.create(;;p)

打开加密的已经存在的组表

备注:

打开已经存在的组表。当p是写入密码时可以读取组表,更新组表,增加新附表等;p为读取密码时只读,不能操作组表。当加密组表有读写两个密码时,只需按照需要写其中一个密码即可。

参数:

f

已经存在的组表文件

p

写入密码/读取密码

返回值:

组表/集群基表对象

示例:

 

A

 

1

=file("D:\\employee2.ctx")

 

2

=A1.create(#EID,NAME,GENDER;;"@!*123":"12")

生成加密组表

3

=file("D:\\employee3.ctx")

 

4

=A3.create(#EID,NAME,GENDER)

生成不加密组表

5

=A3.create()

打开不加密的组表文件

6

=A1.create(;;"12")

用读取密码读取已存在写/读加密组表

7

=A1.create(;;"@!*123")

用写入密码打开已存在写/读密码的加密组表

f.create()

描述:

打开已经存在的集群组表

语法:

f.create()

打开不带密码的已经存在的集群组表

f.create(;;p)

打开加密的已经存在的集群组表

备注:

打开已经存在的集群组表。集群组表由文件的类型决定生成的集群基表的类型,分布集群文件对应的集群基表为分段类型,复写集群文件对应的集群基表为复写类型。当p是写入密码时可以读取组表,更新组表,增加新附表等;p为读取密码时只读,不能操作组表。当加密组表有读写两个密码时,只需按照需要写其中一个密码即可。

参数:

f

已经存在的集群文件

p

写入密码/读取密码

返回值:

集群组表对象

示例:

 

A

 

1

=file@0("emp1.ctx",["192.168.0.116:8281","192.168.0.129:8281"])

生成集群复写文件

2

=A1.create()

创建复写类型集群基表

3

=file@0("employee2.ctx",["192.168.31.72:8281"])

 

4

=A3.create(;;"12")

用读取密码读取已存在写/读加密的集群组表

5

=A3.create(;;"@!*123")

用写入密码打开已存在写/读密码的集群组表

 

f.create( C :b 1 ,…; K :b 2 ;pw:pr)

描述:

用文件创建组表的基表

语法:

f.create(C:b1,…;K:b2;pw:pr)

备注:

用文件f创建组表的基表,以下简称基表,C是基表的列;C前带#表示维,维必须在前面,并且基表中的记录对于维必须是有序的,维可以有多个b1表示排号键的长度;K为分段键,若是排号时则用前b2个字节作为分段键。组表文件的扩展名为ctx

参数:

f

本地文件

C

基表的列

b1

排号键的长度,不超过8的整数。可以省略,省略时K不是排号类型

K

分段键

b2

字节数,不超过8的整数,可以省略

pw

写入密码,可省略;当写入密码省略时,读取密码必须省略

pr

读取密码,可省略;当写入密码不省略时,读取密码可省略

选项:

@u

不分段,缺省将分段

@r

生成行存文件,缺省用列存,行存模式的组表不支持使用多路游标

@y

文件已存在时强制重新创建,缺省中断计算并弹出错误信息

返回值:

基表

示例:

 

A

 

1

=file("D:\\employee1.ctx")

 

2

=A1.create(#EID,NAME,GENDER)

创建无排号键的基表employee1EIDNAMEGENDER为基表的列名,其中EID表示维

3

=file("D:\\employee2.ctx")

 

4

=A3.create(#EID:3,NAME,GENDER;EID:2)

创建以EID为排号键,EID的前两个字节为分段键的基表,且排号键的长度是3

5

=file("D:\\employee3.ctx")

 

6

=A5.create(#EID,NAME,GENDER;;"@!*123":"12")

创建带有写:读密码的基表

7

=file@zw("emp1.ctx",["192.168.0.131:8281"])

 

8

=A1.create(#EID,NAME,GENDER)

创建不加密的集群基表

9

=A1.create(#EID,NAME,GENDER;;"@!*123":"12")

创建带有写:读密码的集群基表

10

=file@z("emp1.ctx",["192.168.0.116:8281"])

从节点机"192.168.0.116:8281"1区读取组表文件emp1.ctx,生成分布类型的集群文件

11

=A10. create(#EID,NAME,GENDER)

创建集群基表

12

=A1.create@y(#EID,NAME,GENDER)

强制重新创建,无选项@y时报错

f.create(C:b 1 ,…;K:b 2 ;pw:pr)

描述:

用分布文件创建集群组表的基表

语法:

f.create(C:b1,…;K:b2;pw:pr)

备注:

用分布文件f创建集群组表的基表,以下简称基表,C是基表的列,C前带#表示维,基表中的记录对于维必须是有序的,维可以有多个b1表示排号键的长度;K为分段键,若K是排号时则用前b2个字节作为分段键。

当创建可写的集群表时,仅用于维护;可执行attach, index, reset, append, update, delete等方法;在空数据的集群文件中使用append时必须先追加集群游标。

参数:

f

分布文件

C

基表的列

b1

排号键的长度,不超过8的整数。可以省略,省略时K不是排号类型

K

分段键

b2

字节数,不超过8的整数,可以省略

pw

写入密码,可省略;当写入密码省略时,读取密码必须省略

pr

读取密码,可省略;当写入密码不省略时,读取密码可省略

选项:

@u

不分段,缺省将分段

@r

生成行存文件,缺省用列存,行存模式的组表不支持使用多路游标

@y

文件已存在时强制重新创建,缺省中断计算并弹出错误信息

返回值:

集群表对象

示例:

 

A

 

1

[192.168.31.72:8281]

 

2

=file@z("salespart.ctx", A1)

 

3

=A2.create()

 

4

=A3.cursor()

产生集群游标

5

=file@zw("salespart1.ctx",["192.168.31.72:8281"])

salespart1.ctx不存在,用于产生可写的分布文件

6

=A5.create(#EID,Name,OCount;;"@!*123":"12")

创建带有写:读密码的集群表

7

>A6.append(A4)

追加集群游标

8

=A6.cursor().fetch()

 

9

=file@n("D:\\1\\EmpCTX.ctx",A1)

EmpCTX.ctx中有字段EIDName,Dept,Age其中 EID为排号键

10

=A9.create()

 

11

=A10.cursor()

产生集群游标

12

=file@wz("EmpCTX2.ctx",A1)

 

13

=A12.create(#EID:4,Name,Dept,Age;EID:3)

创建以EID为排号键,EID的前3个字节为分段键的基表,且排号键的长度是4

14

>A13.append(A11)

追加集群游标

15

=A13.cursor().fetch()

 

T.create()

描述:

复制序表T的数据结构,以此产生一个新的空序表

语法:

T.create()

备注:

如果T有键,则同时复制键。

参数:

T

序表

返回值:

新空序表

示例:

Ø  由普通序表产生

 

A

 

1

=demo.query("select top 1 * from DEPARTMENT")

2

=A1.create()

通过=A1.create (),产生一个空序表A2,这个空序表与A1序表的数据结构一致,都是由DEPTMANAGER字段组成

 

Ø  复制键和描述符

 

A

 

1

=demo.query("select * from DEPARTMENT ")

 

2

=A1.keys(DEPT)

 

3

=A1.create()

产生一个空序表,与A1序表的数据结构一致,且同时复制了键

r.create()

描述:

复制记录r的数据结构,以此产生一个新的空序表

语法:

r.create()

备注:

如果r有键,则同时复制键。

参数:

r

记录

返回值:

新空序表

示例:

Ø  由普通记录产生

 

A

 

1

=demo.query("select top 1 * from DEPARTMENT")

2

=A1(1).create()

通过=A1(1).create (),产生一个空序表A2,这个空序表与A1(1)记录的数据结构一致,都是由DEPTMANAGER字段组成

 

Ø  复制键和描述符

 

A

 

1

=demo.query("select * from DEPARTMENT ")

 

2

=A1.keys(DEPT)

 

3

=A1(1).create()

产生一个空序表,与A1(1)记录的数据结构一致,且同时复制了键