【问题标题】:Procedure deleterecord has no parameters and arguments were supplied [duplicate]过程 deleterecord 没有参数,并且提供了参数[重复]
【发布时间】:2021-04-13 19:33:34
【问题描述】:

我为删除 SQL server 数据库中的记录写了一个存储过程 但是我不能用存储过程发送参数。 这是我的存储过程:

ALTER PROCEDURE [dbo].[DeleteRecord]
AS
    DECLARE @id INT

    DELETE FROM Student1 WHERE id = @id

这是我调用这个存储过程的 C# 代码:

var db = new PetaPoco.Database("test");
    db.Fetch<Models.Generated.test.Student1>("; EXEC [dbo].[DeleteRecord] @@Id = @0", Id);

【问题讨论】:

  • 错字? whrere 应该是 where
  • 我不能执行存储过程,因为我认为我的过程是错误的
  • 我昨天在另一个帐户和问题下回答了你:整个代码是一个大错字stackoverflow.com/questions/67055455/…

标签: c# sql petapoco


【解决方案1】:

您的 proc 定义不正确,您没有将任何参数传递给您的函数,proc 中的变量永远不会获得任何值(它始终为 null,因为没有为其分配任何值)

CREATE OR ALTER Procedure [dbo].[DeleteRecord]
( 
    @id INT
) 
AS 
Delete from Student1 where id=@id

【讨论】:

  • 非常感谢您的代码是正确的
猜你喜欢
  • 1970-01-01
  • 2018-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多