alter()

阅读(1545) 标签: 修改, 字段,

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

T.alter( F i ,…; F’ i ,… )

描述:

修改序表中的字段。

语法:

T.alter(Fi,…;F’i,…)

备注:

修改序表T中的字段,字段顺序为Fi,…,未列出字段按原序依次排列,参数Fi若在序表不存在则作为新字段添加,参数F’i为要删除的字段。

参数:

T

序表。

Fi

字段名称。

F’i

字段名称。

返回值:

序表

示例:

 

A

 

1

=demo.query("select class,studentid,subject,score from scores")

scores中的数据列如下:

2

=A1.alter(classname;CLASS)

在序表A1中增加字段classname,删除字段CLASS

3

=A2.alter(classname,STUDENTID,gender)

增加字段gender,字段排列顺序为classname,STUDENTID,gender,剩下的字段UBJECT,SCORE依次往后排:

4

=A3.alter(;gender,classname)

删除字段gender,classname

T.alter(F:x,…;F’,… )

描述:

修改实表中的字段。

语法:

T.alter(F:x,…;F’,…)

备注:

给实表/复实表T添加字段F,用x计算填入;同时删除字段F’;该功能仅对列存情况支持。维及前面的排序字段不得调整。

参数:

T

实表/复实表。

F

要添加的字段名称。

x

计算表达式。

F’

T中已有的字段名称。

返回值:

实表/复实表

示例:

 

A

 

1

=file("emp.ctx")

已存在的组表文件。

2

=A1.open()

打开组表的基表。

3

=A2.cursor().fetch()

查看基表中的数据:

4

=A2.alter(NEW_Salary:SALARY+1000;GENDER)

给基表增加字段,字段名为NEW_Salary,字段值为表达式SALARY+1000计算后的值,同时删除字段GENDER

5

=A2.cursor().fetch()

此时查看基表中的数据,可以看到新增的字段NEW_Salary,并且GENDER字段已被删除: