我有一个SQL Server 2000数据库,它有一个存储过程,可以根据给定的id从特定的表中删除一行。当我从VB.NET调用存储过程时,它不会删除行,但是通过SSMS直接在数据库上运行相同的脚本,它可以工作。
以下是我的事件链:
为什么通过RPC运行它会使它不执行proc中的任何语句,而是直接运行它应该执行的操作?
编辑:以下是我的VB.NET代码。这是我们在100多个其他地方使用的相同代码:
Dim paramRowID as new SqlParameter(“@RowID”, sRowID)
Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(oConn, “spDeleteRow”, paramRowID)
请参阅此处的 Sql 助手源代码。
编辑:我现在讨厌自己SQL抛出了一个异常“nvarchar与image不兼容”,该异常与我传递NULL的另一个参数有关。SSMS不担心类型,但VB.NET担心,因为我没有明确告诉它它类型为image。一旦我定义了参数,它就起作用了。我希望分析人员告诉我有一个错误。
任何帮助将不胜感激,
格雷格
应用程序用来连接sql的用户是否有执行存储过程的权限?这是我要核实的第一件事。
那是因为SSMS不调用RPC而是调用批处理。实际上没有办法从SSMS调用RPC,因为您无法声明参数,这就是RPC调用与TDS中批处理调用的区别:
2.2.1.3 SQL批处理要发送SQL语句或一批SQL语句,由Unicode字符串表示的SQL批处理被复制到TDS数据包的数据部分,然后发送到支持SQL的数据库服务器。SQL批处理可以跨越多个TDS数据包。更多详情见第2.2.6.6节
2.2.1.5远程过程调用要在服务器上执行远程过程调用(RPC),客户端向服务器发送一个RPC消息数据流。这是一个包含RPC名称或数字标识符、选项和参数的二进制流。RPC必须在单独的TDS消息中,不能与SQL语句混合。一条消息中可以有多个RPC。有关更多详细信息,请参阅第2.2.6.5节。
因此,改为监视< code>SQL:BatchCompleted事件,您将看到您的SSMS语句。
我在SQL Server中有一个数据库,其中包含一天内收集的数据,在PostgreSQL中有一个数据库,其中包含OSM数据。我需要修改收集的数据,以便为我的用户创建报告。 现在,我设想以某种方式从SQL Server调用PostgreSQL过程,将收集的数据传递给PostgreSQL,对这些数据进行处理,然后将另一个结果集返回给SQL Server以创建报告。 实现这一目标的“最有效”方式是什么?
我正在尝试使用SQL server上的链接服务器运行Oracle存储过程。 存储过程是,它接受参数。 在SQL Server中,我这样执行它: 我遇到了这个错误: 链接服务器“LServer”的OLE DB提供程序“OraOLEDB. Oracle”返回消息“ORA-06550:第1行,第47列: PLS-00201:必须声明标识符“2016-06-26” ORA-06550:第1行,第7列: P
是否可以通过使用@refreshScope的POST rest api/refresh调用来刷新属性(api-url)而无需安装spring cloud config server和spring cloud config client。 对于。例如consumer.java
我在SAP HANA中定义了一个存储过程,其中包含3个in参数,返回一个记录集。当我用语法调用它时,它在HANA studio中运行得非常好。 现在我需要从微软SQL服务器调用它(我在2016年)。我有一个与HANA服务器的远程链接服务器连接,当使用和语法查询表和视图时,它可以正常工作。 我尽力了,但找不到调用远程过程的方法。“CALL sp_name(p,p,p)”语法返回“对象没有列或当前用户
在我的项目中,我们使用的是最新版本的 Spring-Cloud-LoadBalancer、spring-cloud网关和Resilience4J。 JDK 1.8版 IDE-Eclipse Oxygen。2 一切看起来都很好,但应用程序仍然没有运行...
问题内容: 当我尝试检入机器B时,我正在从机器A运行python manage.py runserver。我键入的URL是http:// A:8000 / 我收到类似系统返回的错误:(111)连接被拒绝 问题答案: 你可以通过以下方式为网络中的计算机运行它 这样一来,你就可以从网络中的任何计算机访问服务器。只需在浏览器中的其他机器上键入你服务器的IP地址…就可以开始使用…了。 或者在你的情况下: