遇到鬼了,存储过程还能这样调用?

CsToD 2009-04-06 06:20:52
在网上看到篇文章:
http://hi.baidu.com/ruanjianql/blog/item/18a04ccfe7f77e39f8dc61b7.html

关键的地方是:

从上面的代码我们可以看出,当存储过程比较多或者存储过程的参数比较多时,这种方法会大大影响开发的速度;另外一方面,如果项目比较大,那么这些用于数据库逻辑的函数在以后的维护中也是一个很大的负担。那么,有没有一种改进的方法可以解决这个问题呢?想到在执行没有参数的存储过程时只需要传入一个存储过程的名字就可以调用相应的存储过程,而且在SqlServer数据库中我们可以直接在查询分析器中敲入“存储过程名(参数列表)”样的字符串就可以执行存储过程,那么,是否可以把这种思想应用到应用程序中呢?

  于是在编译器中键入相应代码。这些代码是在调用不带参数的存储过程的代码的基础上改的。具体代码如下:
SqlConnection conn=new SqlConnection(“connectionString”);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand();
da.SelectCommand.Connection = conn;
da.SelectCommand.CommandText = "NameOfProcedure('para1’,'para2’,para3)";
da.SelectCommand.CommandType = CommandType.StoredProcedure;

  为了使代码更具有代表性,要调用的存储过程的第一个和第二个参数都为字符串类型,第三个参数为整型。执行以后发现,完全可以达到预期的效果!


请看这一行:
da.SelectCommand.CommandText = "NameOfProcedure('para1’,'para2’,para3)";
其中NameOfProcedure是一个存储过程的名字,其后是参数
难道可以直接在CommandText属性里指定参数?!
我自己试了一下,会提示找不到存储过程,因为系统会把CommandText中的整个字符串当作存储过程名,但是原文作者最后却说:
执行以后发现,完全可以达到预期的效果!

他不是忽悠人吧?

...全文
169 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangbo6791644 2009-04-07
  • 打赏
  • 举报
回复
没有见过,我的见识台浅薄了
Dhoopu 2009-04-07
  • 打赏
  • 举报
回复
别人的东东不可全信啊,还是自己试试,看真的效果吧。
sbshu 2009-04-07
  • 打赏
  • 举报
回复
被忽悠了~
zzxap 2009-04-07
  • 打赏
  • 举报
回复
是不是方便很多?
splory 2009-04-07
  • 打赏
  • 举报
回复
可能是凭空想象出来的东东
flashlove2008 2009-04-07
  • 打赏
  • 举报
回复
楼主这算什么,我这里还有更加 经典的收藏

特此发来和大家共享下

SqlConnection conn=new SqlConnection(“connectionString”);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand();
da.SelectCommand.Connection = conn;
da.SelectCommand.CommandText = "FUCK!,ACCEPT parms('para1’,'para2’,para3)";
da.SelectCommand.CommandType = CommandType.StoredProcedure;
wuyq11 2009-04-06
  • 打赏
  • 举报
回复
还没看过
cndhqwfn 2009-04-06
  • 打赏
  • 举报
回复
还没有见过这样的存储过程,路过。。。。。。
yangqidong 2009-04-06
  • 打赏
  • 举报
回复
这是愚人节发的吧
BIRD72sky 2009-04-06
  • 打赏
  • 举报
回复
太神奇了,还有很多东西很奇怪吧

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧