string str = "server='(local)';database='mydatabase';uid='sa';pwd='Sa'";
SqlConnection con = new SqlConnection(str);
con.Open(); //打开连接
SqlCommand cmd = new SqlCommand("sp_InsertStudent", con); //使用存储过程
cmd.CommandType = CommandType.StoredProcedure; //设置Command对象的类型为执行一个存储过程
SqlParameter spr; // 创建参数对象
spr = cmd.Parameters.Add("@studentId", SqlDbType.NChar,11); //增加参数sid
spr = cmd.Parameters.Add("@studentName", SqlDbType.NChar,11); //增加参数sname
spr = cmd.Parameters.Add("@classId", SqlDbType.NChar,11); //增加参数cid
cmd.Parameters["@studentId"].Value = studentid; //给参数赋值
cmd.Parameters["@studentName"].Value = studentname; //给参数赋值
cmd.Parameters["@classId"].Value = classid; //给参数赋值
cmd.ExecuteNonQuery(); //执行存储过程
string sql = 数据库连接字符串;
SqlConnection mysql = new SqlConnection(sql);
SqlCommand cmd = new SqlCommand("sp_InsertStudent ",mysql);
SqlParameter[] paras = {new SqlParameter("@studentId "),studentid,.....}//给参数赋值
cmd.Parameters.AddRange(paras);
cmd.CommandType = CommandType.StoredProcedure;
mysql.Open();
int effectCount = cmd.ExecuteNonQuery();
mysql.Close();
唉,写得太过详细了
其实调用存储过程和调用普通的sql语句的过程是一样的。
1.创建连接字符串string SqlConnectionString="";
2.实例化连接SqlConnection cn = new SqlConnectio(SqlConnectionString);
3.SqlCommand cmd = new SqlCommand("存储过程的名字", cn);
4.执行命令cmd.cmd.ExecuteNonQuery();(这个方法根据你的存储过程而定)
应该这样就OK啦!
与普通sql的不太一样的
SqlConnection mysql = new SqlConnection(sql); SqlCommand cmd = new SqlCommand("name"); cmd.Parameters.Add("@ID", SqlDbType.Int).Value = ID;//你需要的值 cmd.Connection = mysql; cmd.CommandType = CommandType.StoredProcedure; mysql.Open(); SqlDataReader dr = mycmd.ExecuteReader(); mysql.Close(); while (dr.Read()) { //这里就是得到DataReader里面存储过程返回的结果集了 } mysql.Close(); while (dr.Read()) { //这里就是得到DataReader里面存储过程返回的结果集了 }
不知道哦,你上csdn上搜一下