При использовании ROracle
в R
я хочу привязать некоторые параметры к данным, поэтому я делаю это:
> dbh <- dbConnect('Oracle', 'user/pass@host.com:port/sid')
> st <- dbPrepareStatement(dbh, statement="SELECT x FROM mytab WHERE id=:1",
bind="character")
> st <- dbExecStatement(st, data.frame(id=c("9ae", "1f3"), stringsAsFactors=F))
> fetch(st)
x
0 FOO
Что неожиданно, так это то, что он использует только first строка фрейма данных для выполнения SELECT
(если бы он использовал обе строки, я бы получил 2 выходных строки в этом случае, а не 1), в отличие от документации ROracle
:
Объект, который создает dbPrepareStatement
, затем используется вместе с data.frame
(который должен соответствовать связанной спецификации) в вызовах dbExecStatement
, которые должны быть выполнены для каждой строки data.frame
.
Я делаю это неправильно, или приведенное выше словосочетание возможно применимо только к INSERT
/ UPDATE
заявлениям?