社区
C#
帖子详情
C#中怎么样用sql server的储存过程?
formatkm
2003-09-06 10:07:33
在用sqlDataAdapter自动生产储存过程后,怎么样可以随意的操作数据库?有没有简便直观的方法?请举例。
...全文
86
11
打赏
收藏
C#中怎么样用sql server的储存过程?
在用sqlDataAdapter自动生产储存过程后,怎么样可以随意的操作数据库?有没有简便直观的方法?请举例。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lmdhit
2003-09-07
打赏
举报
回复
建立Command对象,但是对象的CommandType属性必须设置为 Procedure
spiketang
2003-09-07
打赏
举报
回复
把string 的选择或插入语句改存储过程的名就行了,得用参数年来获得!
dyesucker
2003-09-07
打赏
举报
回复
也可以直接用sql语句execute
91bct
2003-09-07
打赏
举报
回复
下面是我写的调用存储过程的方法,存储过程有返回值,参数名为v_out_serialno,代码如下:【其他两个参数为输入参数,在过程中的参数名是:v_prefix,v_length】
private string returnSerialNo(string sPrefix,int iLength)
{
string sproc="get_serialno_pro";
OleDbCommand cmd=new OleDbCommand(sproc);
cmd.CommandType=CommandType.StoredProcedure;
//cmd.Connection=Conn
OleDbParameter para_prefix=new OleDbParameter("v_prefix",OleDbType.Char,1);
para_prefix.Value=sPrefix;
cmd.Parameters.Add(para_prefix);
OleDbParameter para_length=new OleDbParameter("v_length",OleDbType.Integer);
para_length.Value=iLength;
cmd.Parameters.Add(para_length);
OleDbParameter para_out_serialno=new OleDbParameter("v_out_serialno",OleDbType.VarChar,20);
para_out_serialno.Direction=System.Data.ParameterDirection.Output;
cmd.Parameters.Add(para_out_serialno);
// cmd.Parameters.Add(new System.Data.OleDb.OleDbParameter("v_out_serialno",OleDbType.VarChar,
// 10,System.Data.ParameterDirection.Output,false,0,0,"sursn",DataRowVersion.Default,0));
cmd.Connection=ConnClass.conn2;
if(cmd.Connection.State!=ConnectionState.Open)
cmd.Connection.Open();
try
{
cmd.ExecuteNonQuery();
string sSerialno=cmd.Parameters["v_out_serialno"].Value.ToString();
cmd.Connection.Close();
return sSerialno;
}
catch(Exception err)
{
//MessageBox.Show(err.Message);
Debug.Fail(err.Message);
return "";
}
}
这是在Oracle环境下调用的。
Edifier0709
2003-09-07
打赏
举报
回复
http://tech.ccidnet.com/pub/disp/Article?columnID=1105&articleID=58457&pageNO=1
doose
2003-09-06
打赏
举报
回复
http://tech.ccidnet.com/pub/disp/Article?columnID=1105&articleID=58457&pageNO=1
zenonline
2003-09-06
打赏
举报
回复
你也可以用SQL语言形式的.如:
SqlCommandtemp.CommandText=@"EXEC produrceName "+parametername1+" ,"+parametername1+","+parametername1;
91bct
2003-09-06
打赏
举报
回复
你是想了解在c#下怎么调用sqlserver存储过程吧?
如果是,如下是我用过的例子代码:
假设存储过程名为Sp_InsertMyTable
在C#中如下调用:
private int MethodOfPro(string ID,string name)
{
string sproc="Sp_InsertMyTable";
SqlCommand cmd=new SqlCommand(sproc);
cmd.CommandType=CommandType.StoreProcedure;
cmd.Connection=this.myConnection;
SqlParameter para1=new SqlParameter("v_id",SqlDbType.Char,10);
para1.value=ID;
cmd.Parameters.Add(para1);
SqlParameter para2=new SqlParameter("v_name",SqlDbType.VarChar,20);
//这个数据类型是Oracle的,不知道SqlServer是不是一样,不好意思:)
para2.value=name;
cmd.Parameters.Add(para2);
if(cmd.Connection.State!=ConnectionState.Open)
cmd.Connection.Open();
int iAffectRows=cmd.ExecuteNonQuery();
cmd.Connection.Close();
return iAffectRows;
}
说明:上面的v_id,和v_name是存储过程中的输入参数。
如果有存储过程中有输出参数则在
【SqlParameter para1=new SqlParameter("v_id",SqlDbType.Char,10);
para1.value=ID;
cmd.Parameters.Add(para1);】中做相应的变化就可以了,主要是说明这个参数是输出的。
hq1305018
2003-09-06
打赏
举报
回复
跟执行查询差不多,要注意的是,Command对象的.CommandType 属性要是CommandType.StoredProcedure;另外要有一些参数要加进去。参数有输入型也有输出型。就是用Parameters属性就行了。
qimini
2003-09-06
打赏
举报
回复
?
bys_home
2003-09-06
打赏
举报
回复
short shortRtn = 0;
SqlConnection myCnn = new SqlConnection(strCon);
SqlCommand cmdGetUserName = new SqlCommand();
myCnn.Open();
cmdGetUserName = myCnn.CreateCommand();
cmdGetUserName.CommandType = CommandType.StoredProcedure;
cmdGetUserName.CommandText = "PR_SelectUserName";
cmdGetUserName.Parameters.Add(new SqlParameter("@strUserCode",strUserCode));
cmdGetUserName.Parameters.Add(new SqlParameter("@intRtn",shortRtn));
cmdGetUserName.Parameters["@intRtn"].Direction = ParameterDirection.InputOutput;
strUserName = cmdGetUserName.ExecuteScalar().ToString();
shortRtn = (short)cmdGetUserName.Parameters["@intRtn"].Value;
myCnn.Close();
return shortRtn;
C#
执行
SQL
Server
的
储存
过程
命令
本文介绍了如何在
C#
中
执行
SQL
语句和存储
过程
,包括使用
Sql
Command对象设置CommandType为Text或StoredProcedure来调用存储
过程
。对于存储
过程
,特别提到在设置set nocount on的情况下,ExecuteNonQuery()会返回-1。同时提供了存储
过程
调用的示例代码。
C#
编写dll进行
sql
server
数据库扩展
储存
过程
博客介绍了编写
C#
函数文件的步骤,包括新建类库文件,若加入强命名的操作方法。还提及数据库引入dll文件,需打开通道。此外,说明了创建函数和调用函数的内容,其
中
sql
server
2008只能用.net3.5版本。
sql
server
2012 分页/dapper/
C#
拼
sql
/免
储存
过程
/简易
介绍
SQL
Server
2012
中
OFFSET/FETCH分页功能,对比My
SQL
的LIMIT,提升分页查询效率。使用Dapper实现简单分页方法。
c#
winform程序实现分页功能
本文介绍了如何在
C#
WinForm应用
中
实现分页功能,包括在
SQL
Server
中
创建
储存
过程
来获取分页数据,以及在WinForm程序
中
调用
储存
过程
并动态生成控件展示数据。通过ROW_NUMBER()函数解决了数据丢失可能导致的分页问题。
免费送源码:Java+Asp.net+
C#
C#
(asp.net) 非物质文化遗产建档管理系统设计与实现 计算机毕业设计原创定制
本文围绕非物质文化遗产建档管理系统展开研究。分析了系统开发的背景、意义与需求,采用ASP.NET框架、
C#
语言和
SQL
Server
数据库进行开发。介绍了系统的功能模块、数据库设计、实现
过程
及测试情况,虽存在数据
储存
和权限设置等问题,但能满足基本需求。
C#
111,129
社区成员
642,540
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章