数据库配置假设如下:


<connectionStrings>
        <add name="Conn" connectionString="Server=.;database=CQSpace;uid=sa;pwd=123456"/>
        <add name="CYQ" connectionString="Server=.;database=CQSpace;uid=sa;pwd=123456"/>
    </connectionStrings>

操作类的实例方法:

方法一:默认取配置文件Conn的链接字符串

MAction action = new MAction(TableNames.CQ_BlogSet);

方法二:取自定义名称如CYQ的链接字符串:

MAction action = new MAction(TableNames.CQ_BlogSet,"CYQ");

方法三:直取链接字符串

MAction action = new MAction(TableNames.CQ_BlogSet,"Server=.;database=CQSpace;uid=sa;pwd=123456");

接下来看看都有什么操作方法更新:

1:单条数据查询方法:

方式一:直接传ID


            MAction action = new MAction(TableNames.CQ_BlogSet);
            if (action.Fill(888))
            {
                action.SetTo(lblAlbumType);
                action.Close();
            }

方式二:传where条件


            MAction action = new MAction(TableNames.CQ_BlogSet);
            if (action.Fill("Title='xxxx'"))
            {
                action.SetTo(lblAlbumType);
                action.Close();
            }

2:数据删除:

方式一:先填充再删除

if (action.Fill(888))
{
   action.Delete();
   action.Close();
}

方式二:根据ID删除

MAction action = new MAction(TableNames.CQ_Album);     
action.Delete(888);
action.Close();
            

方式三:根据条件删除

MAction action = new MAction(TableNames.CQ_Album);
action.Delete("id>888");
action.Close();

3:数据更新

方式一:先填充再更新


MAction action = new MAction(TableNames.CQ_Album);
if (action.Fill(111))
{
   action.GetFrom(txtAlbumName);
   action.Update();
   action.Close();
}

方式二:根据ID更新

  MAction action = new MAction(TableNames.CQ_Album);
  action.GetFrom(txtAlbumName);
  action.Update(111);
  action.Close();

方式三:根据条件更新

MAction action = new MAction(TableNames.CQ_Album);
action.GetFrom(txtAlbumName);
action.Update("id=299 or name='路过秋天'");
action.Close();

4:数据列表查询和多表联合查询没变化,和上上节一致。

看第一节:CYQ.Data 轻量数据层之路 开篇介绍(一)

5:新增加计数查询:

MAction action = new MAction(TableNames.CQ_BlogSet);
lblAlbumType.Text = action.GetCount("id>2 and Name='路过秋天'").ToString();
action.Close();

6:为了进一步隐藏索引取值与赋值而产生的Get与Set方法:

在上节的升级中,新增加的GetFrom与SetTo只能对控件赋值进行操作,如果我们只是需要取值,或设置值,中间没有控件呢?

在上节之前,我们只能又回到索引的方式取值了如:

string albumType=action.Data[CQ_Album.AlbumName].Value.ToString();

狂热升级之后:用上新加的Get方法取值,效果就变成了:

string albumType = action.Get<string>(CQ_Album.AlbumName);

而Set方法赋值则为:

action.Set(CQ_Album.AlbumName, "路过秋天";);

于是,对于取值与赋值,我们目前有3种方法可用了:

1:对控件型的:GetFrom与SetTo

2:对变量型的:Get与Set

3:保留的:索引数据/枚举与字段名(字符串)取值

CYQ学习主要摘要2的更多相关文章

  1. CYQ学习主要摘要4

    http://www.cnblogs.com/cyq1162/archive/2010/11/03/1867642.html Xml的处理 http://www.cnblogs.com/cyq1162 ...

  2. CYQ学习主要摘要3

    1:MAction:增加ResetTable功能  增加ResetTable功能:减少New MAction的个数2:MAction:增加在Update/Insert/Fill/ResetTable失 ...

  3. CYQ学习主要摘要

    这个个人搞的框架不知道到底怎么样,做个项目测试下看看,本来想用EF的,大多数人说性能低,所以先放弃,试试这个,一些主要地方我做个摘录 5:多表怎么搞定? A:视图方式,将多表查询放到数据库里成视图,情 ...

  4. Android 学习历程摘要(三)

    1.proguard混淆:对与Activity等不应进行混淆.否则系统将找不到生命周期函数:JSON字符串要考虑混淆之后是否会影响字段名:native方法也不混淆,否则调用不到 2.ListView的 ...

  5. Android 学习历程摘要(二)

    1.资源文件命名仅仅能小写,否则会报错生成不了R.java文件 2.R文件导包时应该导入自己project的包,而不是android.R 3.数据库操作使用SqliteOpenHelper 4.val ...

  6. Android 学习历程摘要(一)

    初学Android,可能有些地方可能理解不正确,假设有朋友看到的话麻烦指正我一下,万分感谢. 1. 善用API DEMO,刚開始学习的人的需求基本在里面都能够满足,Eclipse导入API Demop ...

  7. PostgreSQL学习笔记——摘要

    因为PostgreSQL和MySQL.DB2等数据库均遵循SQL语法,所以这篇随笔仅记录一些PostgreSQL中和别的数据库有差别或之前学习中遗漏的地方,以及一些我觉得比较重点的地方. 通过psql ...

  8. CYQ学习教程

    http://www.cyqdata.com/cyqdata/article-detail-413

  9. python + selenium 学习笔记 -摘要

    一.浏览器操作相关 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() # 窗口最大 ...

随机推荐

  1. python笔记19-获取当前运行函数名称和类方法名称

    前言 写完代码之后,一般为了方便查看日志,可以在日志输出中加入当前运行的函数名称或类和方法名称,以便于代码报错的时候能快速找到报错的是哪个函数或方法. 那么如何获取当前运行函数(或方法)的名称呢? 获 ...

  2. Git分支模型

    转自:http://www.cnblogs.com/byeyear/archive/2012/11/28/2793374.html 本文介绍一种使用Git进行源代码管理的分支模型,着重于如何使用Git ...

  3. vim多行注释与取消

    神操作 在vim中编写代码,常常会遇到多行注释和取消注释的情况,在VS中我们可以用默认的快捷键或者在设置中自定义快捷键来解决这个问题. vim既然这么强大,必然也是有快捷键来完成的.下面给出具体步骤: ...

  4. 获取音视频文件AVMetadata数据

    获取音视频文件AVMetadata数据 问题来源: http://stackoverflow.com/questions/16318821/extracting-mp3-album-artwork-i ...

  5. 第八章openwrt 703N使用HUB(集线器)插U盘等设备

    在这里就要吐槽一下了,在网上一搜索竟然没有一篇详细的关于703N使用hub后挂载u盘的文章,想了很久问了别人还弄了一天晚上终于弄好了.好吧下面开始言归正传: 1.其实一般质量可以的集线器例如SSK这类 ...

  6. Robot Framework 安装及环境配置

    Robot Framework 安装及环境配置 Robot Framework 介绍 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以 ...

  7. Jenkins自动部署到(远程)tomcat服务器

    Jenkins的流程: 1.从版本控制中获取代码 ->2. 使用maven编译生成相应的包(jar,war) ->3. 部署到指定的地点. 其中2.主要是解决依赖的问题,或许你需要先mvn ...

  8. iOS:视图切换的第一种方式:模态窗口

    一.UIModalController:模态窗口(一个控制器模态出另一个控制器的模态窗口) 当我们在view controller A中模态显示view controller B的时候,A就充当pre ...

  9. 【Python】《大话设计模式》Python版代码实现

    <大话设计模式>Python版代码实现 上一周把<大话设计模式>看完了,对面向对象技术有了新的理解,对于一个在C下写代码比较多.偶尔会用到一些脚本语言写脚本的人来说,很是开阔眼 ...

  10. 【转】svn 的开发目录结构和流程

    原文: https://blog.csdn.net/iteye_15570/article/details/82548132 ------------------------------------- ...