C#调用存储过程 SqlCommand command = new SqlCommand("exec p_test", con);//SqlCommand command = new SqlCommand("p_test", con);//command.CommandType = CommandType.StoredProcedure;我想知道 注释部分 和非注释部分 有什么区别非注释的部分也照样调用存储过程 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SqlCommand默认CommandType是Text,第一种写法没指定,所以CommandText=“exec p_test”,当做一个sql语句执行的,当指定CommandType为StoredProcedure时CommandText属性应设置为存储过程的名称。基础啊,对着代码智能提示看一下,或F12一下就可以了。 呃、、你说的我都知道 但是你没有说到他们的区别在哪里 或者说 好与不好如果说没啥区别 我直接 就用上面的就行了 直接exec 干嘛还用下面的那种方式 还多写一句代码 无语,一个是当sql语句执行,一个是直接执行存储过程名字和参数你用第二种写法可以执行“delect from X where ID=1”之类的吗? 你这写法二者没有区别,一个没有参数的存储过程可以用CommandType.Text方式调用(就是默认的没被注释的代码),也可以通过CommandType.StoredProcedure方式调用,但如果有复杂参数,返回数据等,第一种方法就很麻烦了,你得用第二种方法实现,很容易就可以用类似command.Parameters.Add("@xxx", SqlDbType.NVarChar, 10).Value =yyy;之类的代码来传递参数, command.Parameters.Add("@xxx", SqlDbType.NVarChar, 10).Value =yyy;这个东西还可以写的这么风骚?、、我一直觉得这样写已经霸气侧漏了command.Parameters.Add(new SqlParameter("@XXX", SqlDbType.Int) { Value = XXX });command.Parameters.AddRange(new SqlParameter[]{ new SqlParameter("@XXX1",SqlDbType.Int){Value = 1000}, new SqlParameter("@XXX2",SqlDbType.Int){Value = 1001}});话说回来 也就是 这两种方式 出来写法上 没有本质的区别?、 一样的,不过我的写法是msdn例子里的标准写法,其实我就是从msdn例子里copy给你的,呵呵, 窗体上的控件全部加载完成后如何自动执行一个方法 使用WMI (Win32_NetworkAdapterConfiguration)获取subnet mask的问题 有关textbox的validating事件的问题 我的SQL出现这样的问题?为什么啊? P/invoke 请问一个.net访问paradox的问题 如何轉換顏色數值 再次配置数据适配器 如何还原一个窗口 C# 如何抛出 int 类型的异常?求高手指导下,或者有更好的建议也可以! Sendkeys的周期问题 急!特急!C#不能清空OFFICE2010的剪贴板Clipboard
基础啊,对着代码智能提示看一下,或F12一下就可以了。
如果说没啥区别 我直接 就用上面的就行了 直接exec
干嘛还用下面的那种方式 还多写一句代码
你用第二种写法可以执行“delect from X where ID=1”之类的吗?
command.Parameters.Add("@xxx", SqlDbType.NVarChar, 10).Value =yyy;
这个东西还可以写的这么风骚?、、
我一直觉得这样写已经霸气侧漏了
command.Parameters.Add(new SqlParameter("@XXX", SqlDbType.Int) { Value = XXX });
command.Parameters.AddRange(new SqlParameter[]{
new SqlParameter("@XXX1",SqlDbType.Int){Value = 1000},
new SqlParameter("@XXX2",SqlDbType.Int){Value = 1001}
});话说回来 也就是 这两种方式 出来写法上 没有本质的区别?、