当前位置: 首页 > 知识库问答 >
问题:

如何从SQL Server调用红移过程

司徒斌
2023-03-14

我有一个在Amazon redshift中创建的过程,我可以从SQL Workbench中调用它,没有任何问题。现在我需要从SQL Server调用该过程。即使我可以用ODBC连接Redshift来进行数据查询,我也无法通过ODBC连接调用该过程。有没有办法以编程方式调用该过程?

驱动程序支持
我们建议您将Java数据库连接(JDBC)和开放数据库连接(ODBC)驱动程序升级到支持Amazon红移存储过程的最新版本
如果客户机工具使用通过CALL语句传递到服务器的驱动程序API操作,那么您可能可以使用现有的驱动程序。输出参数(如果有)作为一行的结果集返回
最新版本的Amazon Redshift JDBC和ODBC驱动程序对存储过程发现提供了元数据支持。它们还支持定制Java应用程序的CallableStatement。有关驱动程序的更多信息,请参阅《亚马逊红移群集管理指南》中的“使用SQL客户端工具连接到亚马逊红移群集”。

亚马逊就是这么说的。令人困惑的是,我刚刚下载了最新版本的ODBC驱动程序,但它似乎仍然不起作用。当我从SQL Server调用它时,我得到了以下错误:

链接服务器“xxxx”的OLE DB提供程序“MSDASQL”表示该对象没有列,或者当前用户对该对象没有权限。

共有1个答案

督阿苏
2023-03-14

您需要使用SQL Server中的以下语法:

EXEC('调用MyRedShiftsToredProcess();')在[MyRedshiftLinkedServer]

那对我有用。

 类似资料:
  • 本文向大家介绍sqlserver中存储过程的递归调用示例,包括了sqlserver中存储过程的递归调用示例的使用技巧和注意事项,需要的朋友参考一下 递归式指代码片段调用自身的情况;危险之处在于:如果调用了自身一次,那么如何防止他反复地调用自身。也就是说提供递归检验来保证适当的时候可以跳出。 以阶层为例子说存储过程中递归的调用。 递归 当创建此存储过程时候,会遇见一条报告信息

  • 我有两个连接到SQL Server 2005数据库的大程序。 现在,我们将使用SQL server 2008迁移到一个新服务器。当连接到新服务器时,程序不再工作,原因是在程序中的所有查询中,只使用表名,并且它们不是表。因此,SQL server 2008无法识别它们,除非我在表名之前使用架构名称。。。 对我来说,更改两个程序中的所有查询以在表名称之前添加模式名称是非常非常困难的。 我在这个论坛上读

  • 问题内容: 我有一个需要很多参数的插入存储过程-其中2个是@ FirstName,@ LastName。我还有一个更新存储过程,该过程需要许多参数-其中2个是@ FirstName,@ LastName。 我想做的是,从插入SP内部完成之后,调用更新SP并将其发送给@ FirstName,@ LastName。 我不知道这样做的正确语法;我试过了: 但我认为这是错误的。 有人可以告诉我怎么写这个电

  • 我在雪花上做POC,探索这个产品。 我有一个问题:在SQL Server中,我们有400-500个存储过程,这些存储过程是从SSRS报告调用的。这些存储过程本质上很简单,如下所示:

  • 问题内容: 我正在寻找一种与Mockito进行验证的方法,即在测试过程中与给定的模拟没有任何交互。对于具有验证模式的给定方法,很容易实现这一点,但是我还没有找到完整模拟的解决方案。 我真正想要实现的是:在测试中验证,没有任何内容打印到控制台上。jUnit的总体思路如下: A 有很多方法,我真的不想用单独的验证方法来验证每个方法,而… 因此,我希望,如果有一个简单的解决方案,鉴于我具有良好的测试覆盖

  • 问题内容: 我是Sql的新手,但是将excel文档中的1000多个行插入到我的数据库中的最佳方法是什么(Sql Server2008。) 例如,我正在使用以下查询: 这很好用,但是插入1000条记录是有限制的,我有19000条记录,我真的不想做19条单独的插入语句,还有另一个问题,那就是公司ID总是相同的,那么有没有更好的方法呢写了19000次吗? 问题答案: Microsoft提供了带有SQL