点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)具体来说,我想使用Python和...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)具体来说,我想使用Python和...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
具体来说,我想使用Python和/或JDBC在HANA上创建存储过程。
我尝试执行以下简单的DML查询,例如:
更新SYSTEMDB.UNIVERSITY.STUDENT SET SEMESTERS = 6,其中STUDENT_ID = 1
虽然在从SQL控制台执行上述操作时效果很好,但是从JDBC或Python执行此操作时却收到以下错误:
"功能不受支持:远程数据库对象上不受支持的DML/DDL"
对于定义请求(例如CREATE PROCEDURE),也会发生同样的情况。
这是Python中的一个最小(非)工作示例:
从hdbcli导入dbapi 导入系统 连接= dbapi.connect(" 10.11.1.49",39015," SYSTEM"," MyPassword1") 游标= connection.cursor() 查询=""" 更新SYSTEMDB.UNIVERSITY.STUDENT SET SEMESTERS = 6其中STUDENT_ID = 1 "" cursor.execute(查询) 打印(cursor.fetchone())
用户" SYSTEM"对模式" UNIVERSITY"的特权是" CREATE ANY"。
所允许的查询类型是否有限制? 还是我访问表格的方式有问题?
你好帕特里克
调查 dbapi.py 我发现python客户端(hdbcli)不支持"数据库"参数。
它支持的参数列表如下:
您当然可以立即自己找出租户数据库的端口,但是我建议使用其他方法。
使用hdbuserstore设置连接信息,只需在连接参数中引用用户密钥(在JDBC和hdbcli/Python中都是如此)。 例如,我的用户密钥称为hxedev,它指向HXE数据库:
在Python代码中,我可以编写:
从hdbcli导入dbapi中的使用JDBC,我可以编写:
仅此而已。 源代码中没有登录数据。
希望有帮助(顺便说一句:它也适用于ODBC连接)。
Lars
一周热门 更多>