执行存储过程--“为过程或函数指定了过多的参数”的错误

      前些天写用户注册模块,用存储过程添加用户,一开始就报“为过程或函数sp_Adduser指定了过多的参数”。仔细检查数据层的用户添加函数,结果在为存储过程添加sqlparameter参数的时候,数组给写错位了(参数太多)。改正后,编译执行,结果还是报“为过程或函数sp_Adduser指定了过多的参数”。自己把存储过程程序对照了好几遍,没问题。到网上搜索,原来在执行存储过程的时候,如果以sp开头,用户创建的存储过程,总会先检查master数据库(即使该存储过程已用数据库名称限定)。   如果用户创建的存储过程与系统存储过程同名,则永远不执行用户创建的存储过程

 

      自己平时还真没注意,我命名的sp_Adduser就是系统的存储过程,难怪不能执行,所以以后写存储过程最好别以sp开头,一不注意就会发生冲突。比如,sp_adduser,sp_addmessage,我们也会容易起这样的名,但是和系统存储过程是冲突,你自己定义的是不会被执行的,所以总是会报“为过程或函数指定了过多的参数”的错误。

     

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值