数据库配置假设如下:


<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. Java:泛型在编译时会被檫除,Eclipse 如何给出智能提示?

    背景 Java 的泛型是一种语法糖,编译时会被“檫除”,参考文章:http://docs.oracle.com/javase/tutorial/java/generics/,如果没有源代码,Eclip ...

  2. Go:Hello World!

    备注 结束了一周紧张的工作,周末像品茶一样玩味一下Go,本文主要记录学习Go的经历. Go是什么? 官方网站:http://golang.org/. 在Windows下安装Go 官方教程:http:/ ...

  3. .NET:负载平衡的主意事项

    允许局域网发现和共享. 设置固定IP. 网站的IP设置为“全部未分配”. 注意:如果停止IIS的话,不会对负载平衡有影响,负载还是会分配停止了的IIS所在在的电脑,只有停止服务器了,负载不会再分配给停 ...

  4. 玩转windowbuilder pro

    windowbuilder,也就是原来的SWT Designer.Google收购了Instantiations,把它的工具也重新免费发布了. 下载地址:http://www.eclipse.org/ ...

  5. [Gradle] Gradle 构建 android 应用常见问题解决指南

    转载地址:http://www.cnblogs.com/youxilua/p/3348162.html 1: 使用最新的gradle android插件 以前我们写的时候会这么写 dependenci ...

  6. 深度学习Deep learning

    In the last chapter we learned that deep neural networks are often much harder to train than shallow ...

  7. Python学习(九)IO 编程 —— 文件夹及文件操作

    Python 文件夹及文件操作 我们经常会与文件和目录打交道,对于这些操作,python可以使用 os 及 shutill 模块,其中包含了很多操作文件和目录的函数. os 可以执行简单的文件夹及文件 ...

  8. cocos2d-x v3.0各个环境下创建项目以及编译、执行官方DEMO

    摘自:https://github.com/cocos2d/cocos2d-x/ 怎样创建一个新项目 How to start a new game Download the code from co ...

  9. 正向代理/反向代理理解、Nginx概述、安装及配置详解

    一.Nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理, ...

  10. [RSpec] LEVEL 2 CONFIGURATION & MATCHERS

    Installing RSpec In this level we'll start by getting you setup on a regular Ruby project, then move ...