我有一个让我发疯的问题,因为我真的认为这很荒谬。我在这里错过了什么可怕的显而易见的事情?
这是一小段代码:
use XBase;
use strict;
my $table = new XBase $filename or die XBase->errstr;
my $cursor = $table->prepare_select("ID", "NAME", "STREET");
while (my @data = $cursor->fetch) {
### do something here, like print "@data\n";
}
显然,这个简单的代码具有特定的功能:建立连接并检索数据..一切运行良好..
..但是如果我尝试将字段列表作为字符串的内容传递,如下面的片段所示,就会出现问题并且没有检索到数据:
use XBase;
use strict;
my $test = '"ID", "NAME", "STREET"';
my $table = new XBase $filename or die XBase->errstr;
my $cursor = $table->prepare_select($test);
while (my @data = $cursor->fetch) {
### do something here, like print "@data\n";
}
似乎 prepare_select() 根本不喜欢包含在字符串中的字段列表......但可能我错过了通常非常明显的事情......!;)
克里斯