CYQ.Data 轻量数据层之路 使用篇五曲 MProc 存储过程与SQL(十六)

简介:

上一篇:CYQ.Data 轻量数据层之路 使用篇四曲 MAction 增删改(十五)

 

本篇内容概要

本篇继续上一篇内容,本节介绍MProc 类的相关操作。
1:MProc 存储过程操作
2:MProc SQL执行操作[
将于V1.5版本以上支持 ]

 

一:构造函数

方法原型:
public MProc(object procNamesEnum)
public MProc(object procName, string conn)

说明:

构造函数和MAction用法一致,相关操作可参数MAction。

示例1:

// 传入存储过程名称 默认取配置项Conn的数据库链接
MProc proc  =   new  MProc( " GetUserList " );
MProc proc 
=   new  MProc(ProcNames.GetUserList); // 通过枚举传入

示例2:

复制代码
ExpandedBlockStart.gif
// 传入数据库新的数据库链接 配置项Conn
MProc proc  =   new  MProc( " GetUserList " , " ChatConn " );
// 传入数据库新的数据库链接 直接链接字符串
MProc proc  =   new  MProc( " GetUserList " , " Server=.;database=Chat;uid=sa;pwd=xxxxx " );
// 多数据库下用约定名称 取自ChatConn配置项的链接
MProc proc  =   new  MProc(P_ChatEnum.GetUserList);
复制代码

示例3:

说明:仅在V1.5版本以上支持。
// 执行自定义SQL 语句 默认取自Conn配置项数据库链接
MProc proc  =   new  MProc( " select * from Users " );
// 执行自定义SQL 语句 取自ChatConn配置项数据库链接
MProc proc  =   new  MProc( " select * from Users " , " ChatConn " );

 

二:参数操作

方法原型:

public   void  Set( object  paraName,  object  value)
public   void  Set( object  paraName,  object  value,SqlDbType sqlDbType)
public   void  Clear()

示例1:

// 为存储过程或参数化SQL语句的设置参数
proc.Set( " ID " 888 ); // 不加@,内部自加
proc.Set( " @ID " 888 );
proc.Set(GetUserList.ID, 
888 ); // 枚举方式传递

示例2:

proc.Set(Users.ID,  888 ,SqlDbType.Int); // 比上个示例多加了个参数。

示例3:

proc.Clear(); // 清除所有Set的参数。

 

三:方法操作

方法原型:

public  MDataTable ExeMDataTable()
public   int  ExeNonQuery()
public  T ExeScalar < T > ()

示例1:

MDataTable table  =  proc.ExeMDataTable(); // 执行返回MDataTable

示例2:

int  result  =  proc.ExeNonQuery(); // 添加、更新、删除操作,返回受影响的行数。

示例3:

string  result  =  proc.ExeScalar < string > (); // 执行语句,返回首行首列的值。

 

 

四:返回值与链接关闭

方法原型:
public   int  ReturnValue
public   void  Close()

示例1:

MDataTable table =  proc.ExeMDataTable();
int  value  =  proc.ReturnValue; // 执行的如果是存储过程,取返回值,通过是记录总数。

示例:

MProc proc  =   new  MProc( " GetUserList " );
MDataTable table
=  proc.ExeMDataTable();
int  value  =  proc.ReturnValue;
proc.Close();
// 执行完后关闭数据库链接

 

 

五:一个完整示例

示例:

复制代码
ExpandedBlockStart.gif
使用示例:
实例化:  MProc proc 
=   new  MProc(ProcNames.GetList);
添加参数:proc.Set(GetList.ID, 
10 );
获取列表:MDataTable table 
=  proc.ExeMDataTable();
取返回值:int count=proc.ReturnValue;
关闭链接:proc.Close();
绑定控件:GridView1.DataSource 
=  table;
         GridView1.DataBind();
复制代码

 

 

结言

通过本节介绍,掌握使用MProc处理存储过程操作。
一些特别的自定的SQL语句操作也可以操作[需要V1.5及以上版本支持]。

 

 

本使用篇教程到此结束,下面紧跟着会开源V1.4版本,敬请关注。

同时若引起起相关教程需要升级,会续篇介绍。

版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:

http://www.cnblogs.com/cyq1162/archive/2010/09/06/1819286.html

相关文章
|
1月前
|
SQL DataWorks NoSQL
DataWorks产品使用合集之如何将SQL Server中的数据转存到MongoDB
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
252 1
|
6天前
|
SQL 数据库
【SQL】已解决:SQL分组去重并合并相同数据
【SQL】已解决:SQL分组去重并合并相同数据
17 1
|
21天前
|
SQL druid Java
传统后端SQL数据层替代解决方案: 内置数据源+JdbcTemplate+H2数据库 详解
传统后端SQL数据层替代解决方案: 内置数据源+JdbcTemplate+H2数据库 详解
17 1
|
24天前
|
SQL 数据库
零基础学习数据库SQL语句之操作表中数据的DML语句
零基础学习数据库SQL语句之操作表中数据的DML语句
19 0
零基础学习数据库SQL语句之操作表中数据的DML语句
|
28天前
|
SQL 存储 数据库
如何在SQL中添加数据:一个初学者指南
如何在SQL中添加数据:一个初学者指南
27 3
|
6天前
|
SQL 测试技术 数据库
【SQL】已解决:SQL错误(15048): 数据兼容级别有效值为100、110或120
【SQL】已解决:SQL错误(15048): 数据兼容级别有效值为100、110或120
13 0
|
20天前
|
SQL
sql语句按指定某个字段分组后删除重复数据只保留id最小/最大的一条数据
sql语句按指定某个字段分组后删除重复数据只保留id最小/最大的一条数据
11 0
|
21天前
|
SQL 分布式计算 大数据
MaxCompute产品使用问题之如何使用MaxCompute SQL客户端删除分区数据
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
24天前
|
SQL 前端开发 关系型数据库
零基础学习数据库SQL语句之查询表中数据的DQL语句
零基础学习数据库SQL语句之查询表中数据的DQL语句
16 0
|
1月前
|
存储 分布式计算 大数据
MaxCompute产品使用合集之在sql里调用自定义的udf时,设置一次同时处理的数据行数,是并行执行还是串行执行的
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。