簡體   English   中英

從 Python 連接到 HANA

[英]Connect to HANA from Python

我正在嘗試連接到 SAP,以便在 pandas dataframe 中提取一些元數據。 有很多混合方法,我找不到任何具體的方法。 我只有:

  • 用戶名
  • 密碼
  • 服務器ip
  • 服務器名稱
  • 和表名。

管理員已為特定表提供了對所需帳戶的所有讀取權限。

完成這項工作的最快方法是什么? 我沒有在 SAP 站點上安裝任何東西的選項。

我已經嘗試了下面的代碼片段,但我得到了錯誤“目標機器主動拒絕它”並且在 SAP 端進行調試是一個失敗的原因。 先感謝您。

import pyhdb
connection = pyhdb.connect(
     host="123.com",
     port=123,
     user="user",
     password="pswrd"
 )
 cursor = connection.cursor()
 cursor.execute("SELECT * FROM Tablename")
 cursor.fetchone()
 connection.close()

from hdbcli import dbapi
conn = dbapi.connect(
        address="123.com",
        port=123,
        user="user",
        password="pswrd"
    )
    cursor = conn.cursor()

鑒於您的服務器地址和端口示例,我不確定您對如何連接到 HANA 數據庫有正確的想法。

由於您想使用 pandas,因此查看 Python 的 SAP HANA 機器學習庫可能是個好主意。

檢查教程博客文章: https://blogs.sap.com/2019/11/05/hands-on-tutorial-machine-learning-push-down-to-sap-hana-with-python/

為此,無需在 HANA 系統上安裝或調試任何東西。

要連接到 hana 數據庫:

from hdbcli import dbapi
conn = dbapi.connect(
   address="serverhost",
   port=39015,
   user="UserName",
   password="Password",
   databasename='DBNAME'
)

確保輸入正確的端口號

要獲得 sql 結果為 pandas dataframe:

query = 'select * from table'
df = pd.read_sql_query(query, conn)
df.head()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM