2017-02-08 56 views
-2

我曾經使用庫RODBCODBC connection從SAP HANA向R讀取數據。它工作正常,但我有問題,當我嘗試讀取存儲在像「行存儲」表中的數據,因爲HANA諮詢表明我的列名,但犯規的數據:讀取行使用ODBC連接將SAP HANA數據存儲到R

Reglas_Atributos<-sqlQuery(CanalConnec,"select * from RI_PORTFOLIO.ANALISES_LISTA") ## data stored like "Row store" 

它顯示:

[1] ID_ANALISE   NOME     DESCRICAO    TIPO     AFETA_REPOSITORIO  APARECE_REPOSITORIO USUARIO_CRIADOR  COMANDO_SQL   
[9] EXCLUIDA    DATA_CRIACAO   DATA_MODIFICACAO  ID_SENTENCA_ESCOLHIDA STATUS_DE_EXECUCAO ULTIMA_EXECUCAO  QUANTIDADE_DE_UCS  ID_PASTA    
<0 rows> (or 0-length row.names) 

當我從存儲「列存儲」這樣的表中查詢數據時,不會發生這種情況。

+0

存儲類型對您的用戶是否可以看到數據沒有影響。對於任何客戶來說,HANA如何存儲數據並不會產生功能差異。對於您的情況,更有可能是表中沒有數據,或者用於連接的用戶沒有權限讀取它。請檢查例如HANA Studio如果您可以訪問此表中的數據。 –

+0

是的,我可以看到表格和數據,實際上我可以導出表格並在SAP HANA中使用其他表格進行查詢,但是此查詢在R中也不起作用。 –

回答

0
  1. 這可能是RODBC中的一個錯誤。如果你在stackoverflow上搜索"RODBC rows",你會遇到很多類似的問題。

  2. 我不會推薦使用rowstore表格來存儲應用程序數據。只有非常罕見的情況下,將應用程序數據放入行存儲中才有意義。在SAP應用程序中,rowstore主要用於系統表。壓縮通常比列存儲更差,性能只會更好地訪問單行......如果您沒有很好的理由將數據放入行存儲,請始終使用列存儲! 有關行列存儲的更多詳細信息,請參見SAP help或查看不同的社區。