2.6.2删除记录

在下面的网格中,先删除第2行的记录,再删除第1,2两行记录,最后再删除其中年龄大于15岁的学生记录:

 

A

1

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

2

>A1.delete(2)

3

>A1.delete([1,2])

4

>A1.delete(A1.select(AGE>15))

A1中的序表,在A2,A3,A4中陆续添加记录。分步执行后A1中的序表变化如下:

在序表中删除记录时,使用delete函数,可以指定序号,也可以指定序号序列,还可以从序表中删除排列中的所有记录。A4中的代码也可以用>A1.delete(A1.pselect@a(AGE>15)),效果是相同的。

 

再来看排列中的情况:

 

A

1

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

2

=A1.to()

3

>A2.delete(2)

4

>A2.delete([1,2])

A2中的排列与上例中序表中的初始数据相同,A3A4中依次删除1条和2条记录,分步执行可以发现A2中排列变化如下:

而查看A1中的数据可以发现,序表中仍然是初始数据:

序表中被删除的是实体记录;排列中被删除的是记录引用,并不会影响原序表。