假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”,下面程序段的功能是:将temp.dbf中歌手的 “最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段),在下划线处应该填写的SQL语句是( )。 USE歌手

admin2015-12-09  40

问题 假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”,下面程序段的功能是:将temp.dbf中歌手的 “最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段),在下划线处应该填写的SQL语句是(    )。
    USE歌手
    DO WHILE.NOT.EOF()
    REPLACE歌手.最后得分WTH a[2]
    SKIP
    ENDDO

选项 A、SELECT*FROM temp WHERE temp.歌手号=歌手.
    歌手号TO ARRAY a
B、SELECT*FROMtempWHEREtemp.歌手号=歌手.
    歌手号INTO ARRAY a
C、SELECT*FROMtempWHEREtemp.歌手号=歌手.
    歌手号TO FILE a
D、SELECT*FROM temp WHERE temp.歌手号=歌手.
    歌手号INTO FILE a

答案B

解析 选项A的命令格式错误,将查询结果保存在数组里应该是:INTO ARRAY短语。由程序语句“REPLACE歌手.最后得分WITH a[2]”中的“a[2]” 可以看出a是一个数组名,a[2]指的是数组a中的第2个元素,所以填写的SQL语句中一定用到了数组a。而选项C和选项D中,是将查询结果保存在文本文件中,故可以排除。程序的功能是:在歌手表中,从第一条记录开始,在temp表中找到与该记录的歌手号相同的记录,并把记录的所有字段保存在数组a中,由于temp表中只有“歌手号”和“最后得分”两个字段,所以数组a中有两个元素,第一个是“歌手号”,第二个是“最后得分”,再用REPLACE命令将歌手表中当前记录中的“最后得分”字段用a[2]替换,即填入了“最后得分”。当一条记录处理结束之后,SKIP命令将记录指针指向歌手表的下一条记录,进行同样的处理,最终将歌手表中的“最后得分”字段填写完毕。
转载请注明原文地址:https://kaotiyun.com/show/1qbp777K
0

最新回复(0)