3

我的 SQL 请求看起来像这样

SELECT Objects.name, Elements.name, Labels.name....

我将此请求中的值写入数组,如下所示:

while([results next]){

[arrayObjects addObject:[results stringForColumn:@"Objects.name"]];
    [arrayElements addObject:[results stringForColumn:@"Elements.name"]];
    [arrayLabels addObject:[results stringForColumn:@"Labels.name"]];
      ...

}

我看到这条消息:“警告:我找不到名为 'objects.name' 的列”

但如果我写

while([results next]){

[arrayObjects addObject:[results stringForColumn:@"name"]];
    [arrayElements addObject:[results stringForColumn:@"name"]];
    [arrayLabels addObject:[results stringForColumn:@"name"]];
      ...

}

那么我只有所有数组的最后一个值。

有没有办法来解决这个问题?

4

1 回答 1

1

这是要尝试的东西,我不确定这是否是您要找的东西:

而不是像这样使用“相同名称”的每一列:“SELECT Objects.name, Elements.name, Labels.name....”

试试这个:“选择 Objects.name 作为 O_name,Elements.name 作为 E_name,Labels.name 作为 L_Name ....”

然后,您可以使用唯一的列名:

[arrayObjects addObject:[results stringForColumn:@"O_name"]];
[arrayElements addObject:[results stringForColumn:@"E_name"]];
[arrayLabels addObject:[results stringForColumn:@"L_name"]];
  ...
于 2013-10-07T20:04:14.593 回答