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. GC:垃圾回收器简介

    Java堆内存被划分为新生代和年老代两部分,新生代主要使用复制和标记-清除垃圾回收算法,年老代主要使用标记-整理垃圾回收算法,因此java虚拟中针对新生代和年老代分别提供了多种不同的垃圾收集器,JDK ...

  2. MAT(1) 小样

    一.内存溢出时生成hprof文件 运行参数: -Xms40m -Xmx40m -Xmn20m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=E:\J ...

  3. linq to sql转载

    LINQ简介 LINQ:语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库 ...

  4. RecyclerView 下拉刷新上拉加载

    步骤: 首先直接定义一个XRecyclerView继承RecyclerView,重写他的三个构造方法. init(Context mContext)方法用来初始化底部加载的view 回到XRecycl ...

  5. Firefox插件一键切换兼容IE

    转载:http://mozilla.com.cn/thread-42137-1-1.html 让火狐兼容IE的双核扩展,一键切换至IE内核,网银支付无忧愁.支持Adblock plus和FireGes ...

  6. Extjs随笔

    { columnWidth : .1, layout : 'form', items : [{ fieldLabel : "至", labelSeparator:'', label ...

  7. Delphi / C++ Builder 使用 UDT ( UDP-based Data Transfer ) 4.11

    添加 src/*.cpp 到工程, 修改 Directories and Conditionals, 添加 WIN32 UDT_EXPORTS udt.h 需要 #pragma link " ...

  8. C166 Interfacing C to Assembler

    Interfacing C to Assembler You can easily interface your C programs to routines written in XC16x/C16 ...

  9. 【转】Python实现的线程池

    import Queue, threading, sys from threading import Thread import time,urllib # working thread class ...

  10. C++学习笔记之函数指针

    与数据项类似,函数也有地址.函数的地址是存储其机器语言代码的内存开始的地方. 一.函数指针的基础知识 假设要设计一个名为estimate()的函数,估算编写指定行数代码所需时间,并且希望不同的程序员都 ...