Справочная информация:
Я использую dbplyr
и dplyr
для извлечения данных из базы данных, затем я использую команду dbSendQuery()
для построения моей таблицы.
Проблема:
После создания таблицы, если я запускаю другую команду, я получаю следующее предупреждение:
Warning messages:
1. In new_result(connection@ptr, statement): Cancelling previous query
2. In connection_release(conn@ptr) :
There is a result object still in use.
The connection will be automatically released when it is closed.
Вопрос:
Поскольку у меня нет результата для извлечения (я посылаю команду для построения таблицы), я не уверен, как избежать этого предупреждения.На данный момент я отключаюсь после создания таблицы и ошибка уходит.Что я могу сделать, чтобы избежать этого предупреждения?
В настоящее время все работает, у меня просто есть это предупреждение.Я просто хотел бы избежать этого, так как я предполагаю, что должен очистить что-то после того, как я построил свою таблицу.
Пример кода
# establish connection
con = DBI::dbConnect(<connection stuff here>)
# connect to table and database
transactions = tbl(con,in_schema(“DATABASE_NAME”,”TABLE_NAME”))
# build query string
query_string = “SELECT * FROM some_table”
# drop current version of table
DBI::dbSendQuery(con,paste('DROP TABLE MY_DB.MY_TABLE'))
# build new version of table
DBI::dbSendQuery(con,paste('CREATE TABLE PABLE MY_DB.MY_TABLE AS (‘,query_string,’) WITH DATA'))