这篇博文包含了从CPI访问本地sqlserver的可能解决方案。我已尽我所能使这份清单尽可能广泛。我还将包括进一步阅读的链接。我们开始吧!
0. 使用云连接器
更新:现在您可以使用JDBC连接到本地数据库。查看费尔南多·马丁的博客文章,大数据的培训,了解步骤。内部网络中的一个非常小的应用程序
它可以是Java、NodeJS、.Net等。我相信这是最干净的解决方案,因为它受Microsoft和SAP的最新功能支持。访问本地HTTP资源是SAP Cloud Connector的要点。
https://github.com/microsoft/sql-server-samples/tree/master/samples/features/json/todo-app/nodejs-express4-rest-api
https://docs.microsoft.com/en-us/sql/relational-databases/json/json-data-sql-server?视图=sql-server-ver15
2。在SQL Server存储过程中使用HTTP客户机
有些库可能需要配置,并且可能有一些限制。-MSXML2.XMLHTTP(旧)-MSXML2.ServerXMLHTTP(新)
https://stackoverflow.com/questions/17407338/how-can-i-make-http-request-from-sql-server
它们可能是默认安装的,可能需要其他配置。请看问题:"3.ServerXMLHTTP的平台要求是什么?"https://support.microsoft.com/en-us/help/290761/frequency-asked-questions-about-serverxmlhttp
"您必须确保启用OLE自动化…"https://stackoverflow.com/questions/2133225/how-do-i-send-parameters-by-using-http-post-with-t-sql-and-ole-automation-proced
下面是一个卷曲的例子:https://blogs.msdn.microsoft.com/sqlserverstorageengine/2018/04/17/calling-http-endpoints-in-t-sql-using-curl-extension/
3. 基于SAP Cloud Connector TCP代理功能的解决方案:
我们不得不忽略连接池不足带来的性能代价。
一般来说,该解决方案可以看作是一种黑客行为。SAP可能不会认可此解决方案,返利是什么,并可能在将来阻止此解决方案。
Cloud Connector使用SOCKS5 proxy for TCP。
此示例不适用于CPI,这是部署在SCP上的通用Java应用程序。请注意,CPI可能有局限性:https://blogs.sap.com/2018/02/06/how-to-set-up-a-jdbc-connection-using-the-cloud-connector/
SFTP、Mail等标准适配器可与TCP代理配合使用。但对于在映射中工作的自定义适配器或Java代码,没有明确的路径:"我想强调的是,大数据数据,物联网和互联网的区别,在我们2017年7月的版本中,为邮件接收器适配器添加了SAP Cloud Connector支持。此配置使用SAP Cloud Connector 2.10及更高版本中支持的SOCKS5代理。"https://blogs.sap.com/2017/07/20/how-to-connect-via-sap-cloud-platform-integration-to-my-on-premise-mail-server/
《适配器开发指南》最近更新了云连接器功能。它只给出了一个HTTP代理的例子。阿帕拉·奈杜也写了一篇好文章:https://blogs.sap.com/2019/10/31/cloud-integration-developing-custom-adapters-to-access-on-premise-systems/
公共API只有HTTP连接类型:com.sap.it公司.api.ccs.适配器.连接类型.HTTP
1. SQL Server Reporting Services REST API
此功能仅用于BI目的。E、 g.不能调用存储过程。https://docs.microsoft.com/en-us/sql/reporting-services/developer/rest-api?view=sql-server-ver15
以下是API方法:https://app.swaggerhub.com/api/microsoft rs/SSRS/2.0
2. SQL Server SOAP端点
此功能已弃用。
3。SAP CPI JDBC适配器
此适配器仅支持HANA或ASE数据库。
我认为支持"CPI for process services"的本地JDBC对SAP来说是一个难题。对于几个数据库有很多JDBC驱动程序版本,大数据时代,而对于Java版本则有所不同。现在CPI只支持Java7.
因为SAP CPI是一个SaaS服务,维护这些选项需要付出更多的努力。此外,还有sapcpi for Data Services,可用于DBs的一些相同需求。总的来说,本地本地JDBC支持对用户来说是非常好的。
有什么遗漏吗?请在评论中添加您的解决方案。