mssql server 返回多表结果集

mssqlserver 代码

create PROCEDURE [dbo].[gd]

AS
BEGIN SELECT 1,12 SELECT 21,22
END

C#代码

    using (SqlConnection conn = new SqlConnection("Data Source=服务器;Initial Catalog=数据库;Persist Security Info=True;User ID=用户名;Password=密码"))
{
//查询少量数据时,用适配器(内部就是用 读取器 读取数据然后装入 数据集/数据表 返回)
SqlDataAdapter da = new SqlDataAdapter("gd", conn);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
//创建数据表
DataTable dt = new DataTable();
DataSet ds = new DataSet();
//执行查询并填充数据
da.Fill(ds);
conn.Close();
da.SelectCommand.Dispose();
da.SelectCommand.Parameters.Clear(); }

访问形式

                string tab1row1col1 = ds.Tables[].Rows[][].ToString();

                string tab1row1col2 = ds.Tables[].Rows[][].ToString();

                string tab2row1col1 = ds.Tables[].Rows[][].ToString();

                string tab2row1col2 = ds.Tables[].Rows[][].ToString();

mssql server 返回单表结果集

C#代码

  using (SqlConnection conn = new SqlConnection("Data Source=服务器;Initial Catalog=数据库;Persist Security Info=True;User ID=用户名;Password=密码"))
{
SqlDataAdapter da = new SqlDataAdapter("gd", conn);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
//创建数据表
DataTable dt = new DataTable();
//执行查询并填充数据
da.Fill(dt);
conn.Close();
da.SelectCommand.Dispose();
da.SelectCommand.Parameters.Clear(); }

mssql server return返回

mssqlserver 代码

create PROCEDURE [dbo].[gd_return]

AS
BEGIN return '' END

C#代码

  using (SqlConnection conn = new SqlConnection("数据库连接字符串"))
{
SqlParameter[] cmdParms = {new SqlParameter("@return",SqlDbType.VarChar)}; cmdParms[].Direction= ParameterDirection.ReturnValue; SqlCommand sqlCommand = new SqlCommand("gd_return", conn);
sqlCommand.CommandType = CommandType.StoredProcedure;
sqlCommand.Parameters.AddRange(cmdParms);
conn.Open();
sqlCommand.ExecuteNonQuery();
object bj = cmdParms[].Value;
string result = bj.ToString();
}

mssql server output返回

mssqlserver 代码

create PROCEDURE [dbo].[gd_output]
@test1 int output,
@test2 int output
AS
BEGIN set @test1=1; set @test2=2; END

C#代码

using (SqlConnection conn = new SqlConnection("数据库连接字符串"))
{
SqlParameter[] cmdParms = {new SqlParameter("@test1",SqlDbType.Int),
new SqlParameter("@test2",SqlDbType.Int)
}; cmdParms[].Direction= ParameterDirection.Output;
cmdParms[].Direction = ParameterDirection.Output; SqlCommand sqlCommand = new SqlCommand("gd_output", conn);
sqlCommand.CommandType = CommandType.StoredProcedure;
sqlCommand.Parameters.AddRange(cmdParms);
conn.Open();
sqlCommand.ExecuteNonQuery();
object ob1 = cmdParms[].Value;
object ob2 = cmdParms[].Value;
string result1 = ob1.ToString();
string result2 = ob2.ToString(); }

asp.net mssqlserver 存储过程的更多相关文章

  1. Asp.net中存储过程拖拽至dbml文件中,提示无法获得返回值

    Asp.net中存储过程拖拽至dbml文件中,提示无法获得返回值,去属性表中设置这时候会提示你去属性表中更改返回类型. 其实存储过程返回的也是一张表,只不过有时候存储过程有点复杂或者写法不规范的话不能 ...

  2. asp.net调用存储过程详解

    摘要 存储过程的调用在B/S系统中用的很多.传统的调用方法不仅速度慢,而且代码会随着存储过程的增多不断膨胀,难以维护.新的方法在一定程度上解决了这些问题. 关键词 ASP.NET:存储过程   在使用 ...

  3. (转)asp.net分页存储过程

    Asp.Net分页存储过程 SQL分页语句 一.比较万能的分页: sql代码: 1 2 3 select top 每页显示的记录数 * from topic where id not in  (sel ...

  4. asp.net利用存储过程分页代码

    -最通用的分页存储过程 -- 获取指定页的数据 CREATE PROCEDURE Pagination ), -- 表名 ) = '*', -- 需要返回的列 )='', -- 排序的字段名 , -- ...

  5. (转)ASP与sql存储过程

    本文转载自:http://www.cnblogs.com/Spring/archive/2006/10/18/532817.aspx ASP与存储过程(Stored Procedures)的文章不少, ...

  6. ASP.NET调用存储过程并接收存储过程返回值

    ASP.NET调用存储过程并接收存储过程返回值 2010-08-02 11:26:17|  分类: C#|字号 订阅       2010年02月27日 星期六 23:52 假设表结构Create T ...

  7. ASP.NET分页存储过程,解决搜索时丢失条件信息

    存储过程: -- ============================================= -- Author: -- Create date: -- Description: 分页 ...

  8. ASP.NET事务存储过程

    --修改存储过程 alter proc proc_get_student as select * from student; asp.net 的事务就是针对数据层来处理的呀! 没有数据处理不能使用事务 ...

  9. asp.net调用存储过程2

    创建一个只有输入参数的存储过程 create procedure proc_user@name varchar(20),@Password varchar(100)as select * from l ...

随机推荐

  1. iOS设置导航栏样式(UINavigationController)

    //设置导航栏baritem和返回baiitem样式 UIBarButtonItem *barItem = [UIBarButtonItem appearance]; //去掉返回按钮上的字 [bar ...

  2. C#之 HashSet(临时笔记,未参考资料,请慎重)

    HashSet是一个集合,类似于DataSet,但是其主要用途是用来存放同一种类型的元素(string.row.table等),如果添加的元素跟定义时初始的类型不一致,就会直接编译失败. 例如: Ha ...

  3. (剑指Offer)面试题22:栈的压入、弹出序列

    题目: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等. 例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序 ...

  4. POJ3928、LA4329【树状数组】

    借此题试验一下各种做法的效果~ 这题为ACM2008北京站某题,介于简单与中等之间,做出来,罚时不多基本可以铜了,所以这样的题还必须得会,进阶之路. add(a[i]+1,1)这样处理之后,再用sum ...

  5. CMSIS-DAP调试器

    http://www.keil.com/support/man/docs/dapdebug/dapdebug_introduction.htm CMSIS-DAP is the interface f ...

  6. uva208 - Firetruck

    Firetruck The Center City fire department collaborates with the transportation department to maintai ...

  7. linux tar.gz zip 解压缩 压缩命令

    http://apps.hi.baidu.com/share/detail/37384818 download ADT link http://dl.google.com/android/ADT-0. ...

  8. 【HTML】Jquery前台传参及接收

    在一些网页应用中,有的时候需要前台之间传递参数,通过JS语法来做一些判断处理. 发送端:(a页面) <a href="b.html?Show=true" id="t ...

  9. 简短介绍 C# 6 的新特性 .net 6都要来了?

    几周前我在不同的地方读到了有关C#6的一些新特性.我就决定把它们都收集到一起,如果你还没有读过,就可以一次性把它们都过一遍.它们中的一些可能不会如预期那样神奇,但那也只是目前的更新. 你可以通过下载V ...

  10. KMP算法具体解释(转)

    作者:July. 出处:http://blog.csdn.net/v_JULY_v/. 引记 此前一天,一位MS的朋友邀我一起去与他讨论高速排序,红黑树,字典树,B树.后缀树,包含KMP算法,只有在解 ...