| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1691 人关注过本帖
标题:[求助]请问怎么调用存储过程(C#)
只看楼主 加入收藏
lanjinbo
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2006-4-14
收藏
 问题点数:0 回复次数:15 
[求助]请问怎么调用存储过程(C#)

比如,我的sql文件名为dbproc.sql,该文件里写有一个proSelectEmp的存储过程。
请问,怎么去调用这个存储过程,让它里面的SQL语句执行?
用SqlCommand.

搜索更多相关主题的帖子: SQL sql 文件 SqlCommand 
2006-04-21 00:38
guobinxian
Rank: 1
等 级:新手上路
威 望:2
帖 子:195
专家分:0
注 册:2006-3-28
收藏
得分:0 

那必须先将SQL文件执行生成表、数据啊。
SQLCOMMAND COMM = NEW SQLCOMMAND(“EXEC PROCXXX(存储过程名) XXX(参数) XXX”,CONN)


?蔾錵輐落溶溶钥,柳絮筂鎕淡淡風?。
2006-04-21 08:47
鸿鹄之志
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-4-14
收藏
得分:0 
只要将sqlcommend的commendType属性设置为存储过程类型
sqlcommendText属性设置为存储过程名字就可以拉
2006-04-21 08:51
reniking
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-3-1
收藏
得分:0 

可以打开 查询分析器
把.sql文件拖进去,再选要修改的数据库,点运行按钮,文件中的存储过程就保存到数据库中了

然后,在程序中建各SqlDataAdapter,选择使用已有的存储过程

代码中调用这个SqlDataAdapter就可以了

2006-04-21 10:01
lanjinbo
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2006-4-14
收藏
得分:0 
先谢谢各位“同志”了。
4楼的程序具体怎么写?

天蓝蓝,水蓝蓝,扬帆远航,有鱼儿作伴 风嘻嘻,云嘻嘻,共渡幸福彼岸
2006-04-22 02:13
yq_haha
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-4-22
收藏
得分:0 

我来帮你!我的就是没有人来帮!郁闷死了 这个你应该能看明白
public int add() //公有添加方法
{
int i; //接收返回值
Cmd.Connection=myCon.Con; //指定活动连接
Cmd.CommandType=CommandType.StoredProcedure; //指定类型为存储过程
Cmd.CommandText="up_classinfo_insert" ; //指定存储过程名称:插入
//指定存储过程参数

Cmd.Parameters.Add("@ret",SqlDbType.Int); //返回值参数
Cmd.Parameters["@ret"].Direction=ParameterDirection.ReturnValue;
//第一个输入参数:方法二
SqlParameter p=Cmd.Parameters.Add("@classID",SqlDbType.VarChar,10);
p.Value=this.classId;
//第二个输入参数:方法一
Cmd.Parameters.Add("@className",SqlDbType.VarChar,10);
Cmd.Parameters["@className"].Value=this.className;

Cmd.Connection.Open(); //打开连接
Cmd.ExecuteNonQuery(); //执行命令

i=Convert.ToInt32(Cmd.Parameters["@ret"].Value); //得到返回值
Cmd.Connection.Close(); //关闭连接
return i;

}


2006-04-22 15:44
c_23929427
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2006-4-22
收藏
得分:0 

多谢楼上这位大哥拉,我正急着找人帮呢!!!

小菜鸟在这里多谢各位大哥拉!


总有天晴的一天
2006-04-23 00:53
ascor
Rank: 1
等 级:新手上路
帖 子:102
专家分:0
注 册:2006-4-19
收藏
得分:0 

如果 不担心 ' 这个字符的话
我建议用我下面的代码
string ConnectionString = "***************";
SqlConnection MyConnection = new SqlConnection(ConnectionString);
SqlDataAdapter MyCommand = new SqlDataAdapter("gldl2_16 @XH='" + * + "'", MyConnection);
MyConnection.Open();
DataSet ds = new DataSet();
MyCommand.Fill(ds, "xsxxb");

2006-04-23 10:55
ascor
Rank: 1
等 级:新手上路
帖 子:102
专家分:0
注 册:2006-4-19
收藏
得分:0 
MyConnection.Close();
注 gldl2_16为我的存储过程~ @xh为传递的参数~
其实 就是有 '这个问题的话 都可以用replace 来解决的
2006-04-23 10:59
ascor
Rank: 1
等 级:新手上路
帖 子:102
专家分:0
注 册:2006-4-19
收藏
得分:0 
看六楼的代码有点 复杂~
开始我也是用这么复杂的代码~
......
2006-04-23 11:03
快速回复:[求助]请问怎么调用存储过程(C#)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016467 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved