本篇内容概要

本篇继续上一篇内容,本节介绍所有增删改的相关操作。

1:添加数据 Insert方法
2:删除数据 Delete方法
3:更新数据 Update方法

一:添加操作

方法原型:
public bool Insert()
public bool Insert(bool autoSetValue)
public bool Insert(bool autoSetValue, InsertOption option)

示例1:

using(MAction action = new MAction(TableNames.Users))
{
        action.Set(Users.NickName, "路过秋天");//非UI型设值
        action.UI.GetFrom(txtUserName)//UI型设值
        if(action.Insert())
        {
           int id=action.Get<int>(Users.ID);//取回插入后的主键ID
        }
}

示例2:[通常只有action.Insert(true)一行]

using(MAction action = new MAction(TableNames.Users))
{
        action.Set(Users.NickName, "路过秋天");//非UI型设值
        action.GetFrom(txtUserName)//UI型设值
        action.UI.SetAutoPrefix("ppt");//设置控件前缀,可设置多个
        action.Insert(true);//除了已赋值的,其它表字段,自动从Request["ppt字段"]中取值。 }

另:SetAutoPrefix 设置自动前缀方法(默认4个:空、txt、ddl、chb)

方法原形:public void SetAutoPrefix(string autoPrefix, params string[] otherPrefix)

可自定义设置多个前缀示例如:

action.SetAutoPrefix("ppt","nud","lab");

示例3:

using(MAction action = new MAction(TableNames.Users))
{    return  action.Insert(false,InsertOption.ID);//插入后,不需要取回自增加ID }

InsertOption枚举说明:

/// <summary>
    /// 插入数据的返回值选项
    /// </summary>
    public enum InsertOption
    {
        /// <summary>
        /// 使用此项:插入数据后[MSSQL会返回ID,其它数据库则不会返回ID]
        /// </summary>
        None,
        /// <summary>
        /// 使用此项:插入数据后会返回ID。
        /// </summary>
        ID,
        /// <summary>
        /// 使用此项:插入数据后,会根据返回ID进行查询后填充数据行。[默认选项]
        /// </summary>
        Fill,
    }

二:删除操作

方法原型:
public bool Delete()
public bool Delete(object where)

示例1:

using(MAction action = new MAction(TableNames.Users))
{
        action.Delete(1);
}

示例2:

using(MAction action = new MAction(TableNames.Users))
{
        action.Delete("1,2,3");//批量删除
}

三:更新操作

方法原型:
public bool Update()
public bool Update(object where)
public bool Update(object where, bool AutoSetValue)

示例1:

using(MAction action = new MAction(TableNames.Users))
{
       action.Set(Users.Password, "http://cyq1162.cnblogs.com");
       action.Update(1);//更新ID为1的密码
}

示例2:

using(MAction action = new MAction(TableNames.Users))
{
       action.Set(Users.Password, "http://cyq1162.cnblogs.com");
       action.Update("UserName='路过秋天'");
}

示例3:

using(MAction action = new MAction(TableNames.Users))
{
        action.Set(Users.NickName, "路过秋天");//非UI型设值
        action.Update("id=1",true);//除了已赋值的,其它表字段,自动从Request["字段"]中取值。 }

CYQ.Data 数据层框架 CYQ.Data 数据框架 使用篇四 MAction 增删改的更多相关文章

  1. Android 访问Android Wear数据层Api——同步Data Items

    Data Items它被用来同步手机和wear数据接口,一个Date Items通常包含以下几个部分: Payload 字节数组.无论你需要设置数据类型,我们同意对象序列化和反序列化,大小不能超过10 ...

  2. Django框架第七篇(模型层)--多表操作:一对多/多对多增删改,跨表查询(基于对象、基于双下划线跨表查询),聚合查询,分组查询,F查询与Q查询

    一.多表操作 一对多字段的增删改(book表和publish表是一对多关系,publish_id字段) 增  create publish_id 传数字   (publish_id是数据库显示的字段名 ...

  3. Django框架表关系外键-多对多外键(增删改查)-正反向的概率-多表查询(子查询与联表查询)

    目录 一:表关系外键 1.提前创建表关系 2.目前只剩 书籍表和 书籍作者表没创建信息. 3.增 4.删 5.修改 二:多对多外键增删改查 1.给书籍绑定作者 2.删 3.修改 4.清空 三:正反向的 ...

  4. iOS开发——数据持久化OC篇&plist文件增删改查操作

    Plist文件增删查改   主要操作: 1.//获得plist路径    -(NSString*)getPlistPath: 2.//判断沙盒中名为plistname的文件是否存在    -(BOOL ...

  5. 大数据系列之分布式数据库HBase-1.2.4+Zookeeper 安装及增删改查实践

    之前介绍过关于HBase 0.9.8版本的部署及使用,本篇介绍下最新版本HBase1.2.4的部署及使用,有部分区别,详见如下: 1. 环境准备: 1.需要在Hadoop[hadoop-2.7.3]  ...

  6. 如何用Spring框架的<form:form>标签实现REST风格的增删改查操作

    1.首先创建两个bean类,Employee(职工)和Department(部门),一个部门可以有多个职工 Employee类(属性:职工ID:id:姓名:lastName:邮箱:email:性别:g ...

  7. CYQ.Data 开源数据层框架 官方下载

    CYQData 数据框架 介绍: CYQ.Data 是一款操作数据库用的数据框架:安全稳定.简洁易用.功能强大.性能优越.内置支持多数据库.多语言.RSS.AOP.事务等功能. 使用本框架进行开发,入 ...

  8. CYQ.Data 轻量数据层之路 使用篇-MProc 存储过程与SQL 视频[最后一集] H (二十八)

    2019独角兽企业重金招聘Python工程师标准>>> 说明: 本次录制主要为使用篇:CYQ.Data 轻量数据层之路 使用篇五曲 MProc 存储过程与SQL(十六)   的附加视 ...

  9. 开源一个基于dotnet standard的轻量级的ORM框架-Light.Data

    还在dotnet framework 2.0的时代,当时还没有EF,而NHibernate之类的又太复杂,并且自己也有一些特殊需求,如查询结果直接入表.水平分表和新增数据默认值等,就试着折腾个轻量点O ...

随机推荐

  1. EasyUI Tabs绑定右键

    JS:             /*为选项卡绑定右键*/                 $("#tabs").tabs({                     onConte ...

  2. 如何使用Xmanager及VNC登录远程桌面

    如何调用远程桌面,比较常见的有两种方式:Xmanager及VNC 正好今天鼓捣了一下,特整理如下: Xmanager Xmanager的调用也有两种方式: 一.直接在Xshell中调用 这时需设置会话 ...

  3. JSON学习

    1.JSON 语法是 JavaScript 对象表示语法的子集. l  数据在名称/值对中 l  数据由逗号分隔 l  花括号保存对象 l  方括号保存数组 JSON 值可以是: l  数字(整数或浮 ...

  4. 把《c++ primer》读薄(3-3 标准库bitset类型)

    督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. //开头 #include <bitset> using std::bitset; 问题1.标准库bitset类型( ...

  5. 负margin的原理以及应用

    负margin在布局中往往起到意想不到的效果,比如在多栏等高布局中就是用该技巧. 虽说网络上关于负margin的实践有很多,但对margin负值为什么会出现这样的效果却没有多少讲解,本篇的目的就是阐述 ...

  6. ZOJ Problem Set - 1402 Magnificent Meatballs

    比较简单的题目,题目大意就是将n个数字围成一个圈,找到一个划分,是的划分左边的数字之和等于右边的数字之和: e.g 10 1 2 2 5,那么可以找到一个划分10 | 1 2 2 5使得两边数字之和都 ...

  7. mciSendString 的两个小坑

    刚刚修正了自己用的小闹钟的代码. 坑1:REPEAT 选项的作用范围 原来用得好好的,之后选择 .wav 文件,居然不出声音了…… 诶,MCI 肯定支持 .wav 的啊…… 仔细想想,我以前都是选 . ...

  8. Service实现文件下载

    首先在Activity中声明Intent对象,启动Service: //生成Intent对象 Intent intent = new Intent(); //将文件名对象存入到intent对象当中 i ...

  9. AngularJs $q promise

    angularjs提供的$q服务是对Promises规范的一个实现.$q服务可以把一段异步的代码封装成同步的样式. 为啥是样式,因为异步还是异步,它并不会柱塞代码,只是看起来像同步代码. $q.whe ...

  10. 8.1 EntityTypeConfiguration Class in Code-First【Code First系列】

    在我们学习Fluent API之前,先来看看Fluent API中重要的类--EntityTypeConfiguration吧. EntityTypeConfiguration类是Fluent API ...