cyq.data 常见使用方法
配置数据库链接:(这只是其中一种方式)
AppConfig.DB.CommandTimeout = 800;
AppConfig.DB.DefaultConn = "数据库链接地址";
基本用法:
int pageIndex = 1;
int pageSize = 10;
int count = 0;
#region 增加数据
using (MAction action = new MAction("表名/枚举类型/一段sql"))
{
action.Set("列名", "值");
action.Insert(); // action.Insert(InsertOp.None); 可以返回ID
}
#endregion #region 删除数据
using (MAction action = new MAction("表名/枚举类型/一段sql"))
{
action.Delete("条件");//条件格式可以是字符串,例如:"id=2"
}
#endregion #region 修改数据
using (MAction action = new MAction("表名/枚举类型/一段sql"))
{
action.Set("列名", "值");
action.Update("条件");//修改,同时也可以指定条件,条件格式可以是字符串,例如:"id=2"
}
#endregion #region 查询数据
using (MAction action = new MAction("表名/枚举类型/一段sql"))
{
//查询数据格式
action.Select().ToDataTable();//直接查询 DataTable格式
action.Select().ToJson();//直接查询 Json格式
// action.Select().ToList<T>();//直接查询 泛型实体
action.Select().ToXml();//直接查询 xml格式 action.Select("字段=值");//条件查询 可ToDataTable,ToJson,ToXml,ToList<T>
MDataTable mTable = action.Select(pageIndex, pageSize, "条件", out count);//条件格式可以是字符串,例如:"id=2",返回总数,可ToDataTable,ToJson,ToXml,ToList<T> *MDataTable的命名空间是CYQ.Data.Table;
action.SetSelectColumns("列A", "列B");//查询指定列 可ToDataTable,ToJson,ToXml,ToList<T> }
#endregion #region 使用事务
using (MAction action = new MAction("表名/枚举类型/一段sql"))
{
action.BeginTransation();//开始事务
action.RollBack();//回滚
action.EndTransation();//提交事务
}
#endregion #region MProc部分示例
using (MProc proc = new MProc("存储过程名"))
{
proc.Set("参数1", "值1");
proc.Set("参数2", "值2");
proc.SetCustom("ReturnValue", ParaType.ReturnValue);//如果有返回值
proc.SetCustom("OutPutValue1", ParaType.OutPut);//如果有output值
proc.SetCustom("OutPutValue2", ParaType.OutPut);//如果有output值多个
proc.SetCustom("XXX", ParaType.Cursor);//如果是Oracle有游标
proc.SetCustom("XXX2", ParaType.CLOB);//Oracle的CLOB类型
proc.SetCustom("XXX3", ParaType.NCLOB);//Oracle的NCLOB类型 //执行语句
MDataTable dt = proc.ExeMDataTable(); //拿返回值
int returnValue = proc.ReturnValue; //如果只有一个值
object outPutValue = proc.OutPutValue; //多个值返回Dictionary类型
Dictionary<string, string> dic = proc.OutPutValue as Dictionary<string, string>; //*命名空间 using System.Collections.Generic; string out1 = dic["OutPutValue1"];
string out2 = dic["OutPutValue2"];
}
#endregion
杂记:
action.ResetTable("QuAns"); //给action切换操作表名
(基本用法除此之外还有更牛皮的.....就是几乎全自动化,详情可以看该框架作者的介绍..)
盘点一下秋前辈的关于此框架的文档博客:
按照这个顺序来,最多5分钟快速上手,你会发现....相见恨晚
AppConfig、AppDebug类的使用
MAction类使用
MProc类使用
MDataTable 专属篇介绍
附加找寻资料:http://www.cyqdata.com/cyqdata/article-detail-414
总目录在:http://www.cnblogs.com/cyq1162/category/852300.html
余下的再慢慢记录,用的我真舒服...
框架地址:https://github.com/cyq1162/cyqdata
作者:https://www.cnblogs.com/cyq1162/
cyq.data 常见使用方法的更多相关文章
- 常见的数据扩充(data augmentation)方法
G~L~M~R~S 一.data augmentation 常见的数据扩充(data augmentation)方法:文中图片均来自吴恩达教授的deeplearning.ai课程 1.Mirrorin ...
- CYQ.Data 从入门到放弃ORM系列:开篇:自动化框架编程思维
前言: 随着CYQ.Data 开始回归免费使用之后,发现用户的情绪越来越激动,为了保持这持续的激动性,让我有了开源的念头. 同时,由于框架经过这5-6年来的不断演进,以前发的早期教程已经太落后了,包括 ...
- 终于等到你:CYQ.Data V5系列 (ORM数据层)最新版本开源了
前言: 不要问我框架为什么从收费授权转到免费开源,人生没有那么多为什么,这些年我开源的东西并不少,虽然这个是最核心的,看淡了就也没什么了. 群里的网友:太平说: 记得一年前你开源另一个项目的时候我就说 ...
- CYQ.Data V5 分布式缓存Redis应用开发及实现算法原理介绍
前言: 自从CYQ.Data框架出了数据库读写分离.分布式缓存MemCache.自动缓存等大功能之后,就进入了频繁的细节打磨优化阶段. 从以下的更新列表就可以看出来了,3个月更新了100条次功能: 3 ...
- CYQ.Data V5 从入门到放弃ORM系列:教程 - AppConfig、AppDebug类的使用
1:AppConfig类的介绍: Public Static (Shared) Properties IsEnumToInt 是否使用表字段枚举转Int方式(默认为false). 设置为true时,可 ...
- CYQ.Data V5 从入门到放弃ORM系列:教程 - Log、SysLogs两个日志类使用
Log 静态类介绍: Public Static (Shared) Methods GetExceptionMessage 获取异常的内部信息 WriteLogToDB Overloaded. 将日志 ...
- CYQ.Data V5 MDataTable 专属篇介绍
前言 以前一两个月才出一篇,这三天有点变态地连续1天1篇(其实都是上周末两天写好的存货). 短期应该没有新的和此框架相关的文章要写了,这应该是最后一篇,大伙且看且珍惜. 前两篇讲数据库读写分离和分布式 ...
- CYQ.Data V5 数据库读写分离功能介绍
前言 好多年没写关于此框架的新功能的介绍了,这些年一直在默默地更新,从Nuget上的记录就可以看出来: 这几天在看Java的一些东西,除了觉的Java和.NET的相似度实在太高之外,就是Java太原始 ...
- CYQ.Data 快速开发EasyUI
EasyUI: 前端UI框架之一, 相对ExtJs来说,算是小了,这两天,抽空看了下EasyUI的相关知识,基本上可以和大伙分享一下: 官网: http://www.jeasyui.com/ 学习的话 ...
随机推荐
- OSS上传文件到阿里云
最近做项目,需要上传文件,因为上传到项目路径下,感觉有时候也挺不方便的,就试了一下上传文件到阿里云oss上去了, oss的使用网上有很多介绍,都是去配置一下需要的数据,然后直接调用他的api就可以了. ...
- vue-router 页面布局
在单页面应用程序(SPA)中,有些页面的布局结构是上下两块是固定,中间内容是变化的.这时在入口处固定上下部分就可以很好的解决这一问题.有少部分页面没有上下部分或不需要(如:用户注册.登陆页面),针对这 ...
- Windows有点腻了?不如试试Ubuntu.
最近在接触Python. 因为担心环境会向Java一样,很容易影响当前的工作电脑. 所以准备搭建一台虚拟机,不过Windows的尺寸是在太大了.所以,选择安装Ubuntu. Ubuntu官方网站地址: ...
- Mybatis学习---连接MySQL数据库
[目录]
- linux 大冒险
本来想搞一个nas系统,结果上来linux的贼船. 本来是看上了deepin深度linux,结果看到排名第一的manjaro 就忍不住手.通过hyper-v虚拟机安装,发现这个所谓的第一不知道第一在哪 ...
- Python 经典面试题汇总之框架篇
前端和框架 1.谈谈你对http协议的认识 浏览器本质,socket客户端遵循Http协议 HTTP协议本质:通过\r\n分割的规范,请求响应之后断开链接 ==> 短连接.无状态 具体: Htt ...
- rabbitmq之基本原理及搭建单机环境
1.RabbitMQ基本原理 1.MQ全称Message Queue,是一种分布式应用程序的通信方法,是消费-生产者模型的典型代表,producer向消息队列中不断写入消息,而另一端consumer则 ...
- oracle sql developer 出现 : 适配器无法建立连接问题解决方案 The Network Adapter could not establish the connection
直接上图比较直观 tips one:先看看自己 控制台的 SQLplus 可以登录不 可以直接往下面走 ,如果不可以就现在服务里面找到 Oracle 开头的服务启动就好 实在不会可以百度 注:由于该步 ...
- js用canvans 实现简单的粒子运动
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 解释型语言VS编译型语言
前言 计算机不能直接理解除机器语言以外的语言,所以只有把程序员编写的程序翻译成机器语言,计算机才能够执行程序. 将其他语言翻译成机器语言的工具,被称之为:编译器. 编译器的翻译方式有两种:编译和解释. ...