![]() | CYQ.Data 数据层框架CYQ.Data 是一款由路过秋天创作的支持多数据库应用[Txt,Xml,Access,MSSQL,Oracle,SQLite,MySql]的底层数据库操作类库,使用本类库可以轻松快速开发项目。 |
CYQ.Data 数据框架 使用篇四 MAction 增删改
| 快速使用帮助 |
|
|
| #楼主 |
本篇内容概要 本篇继续上一篇内容,本节介绍所有增删改的相关操作。
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.GetFrom(txtUserName)//UI型设值
if(action.Insert())
{
int id=action.Get<int>(Users.ID);//取回插入后的主键ID
} } 示例2: using(MAction action = new MAction(TableNames.Users))
{
action.Set(Users.NickName, "路过秋天");//非UI型设值
action.GetFrom(txtUserName)//UI型设值 action.SetAutoPrefix("txt");//设置控件前缀,可设置多个 action.Insert(true);//除了已赋值的,其它表字段,自动从Request["txt字段"]中取值。 } 另:SetAutoPrefix 设置自动前缀方法 方法原形:public void SetAutoPrefix(string autoPrefix, params string[] otherPrefix) 可设置多个前缀示例如: action.SetAutoPrefix("txt","ddl","lab"); 示例3: using(MAction action = new MAction(TableNames.Users))
{
action.Set(Users.NickName, "路过秋天");//非UI型设值
action.GetFrom(txtUserName)//UI型设值 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.Set(Users.ID, 1); action.Delete(); } 示例2: using(MAction action = new MAction(TableNames.Users))
{ action.Delete("id=1 or UserName='路过秋天'"); } 三:更新操作 方法原型: 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.GetFrom(txtUserName)//UI型设值 action.SetAutoPrefix("txt");//设置控件前缀,可设置多个 action.Update("id=1",true);//除了已赋值的,其它表字段,自动从Request["txt字段"]中取值。 } ![]() | |
| zhujiawei72011-3-2 22:54:02 | #1 | |
![]() | 请问我想insert类似于这样的语句该怎么调用。 insert 表A (字段1,字段2,字段3) select 字段10,字段11,getdate() from 表2 where 字段10=? 回复: 如果你想执行sql语句,可以使用MProc,具体教程在后两篇中有介绍。 | |
| allenliu2011-3-18 3:10:18 | #2 | |
![]() | 首先肯定Author的能力,开源这个框架也很有奉献的精神 个人感觉上面的 update 和 insert 还不够完善,不够灵活 回复: 这个教程写的比较早期,框架已经过多个版本的演进,有了不少的改进,具体可以看最新版本的API文档。 | |
| 游客[注册][113.74.63.*]2011-4-28 12:02:56 | #3 | |
![]() | using(MAction action = new MAction("Emp")) { action.SetAutoPrefix("txt"); action.Insert(true); } 为什么这样执行不了?对应数据库有 3个字段:id,f1,f2,f3 文本框为:txtf1,txtf2,txtf3 执行时显示出错,如果用单独赋值,Set或GetFrom,则无问题 回复: 可以通过输出action.DebugInfo来查看具体执行的SQL语句,再进行判断。 | |
| 游客[注册][219.131.183.*]2011-5-3 19:04:51 | #4 | |
![]() | 更正一下#3 是因为此方法只支持ASP.NET,不支持WinForm所至,并非程序出错,已得到管理员解答 | |
发表评论
论坛公告
数据框架 CYQ.Data QQ群:
1:6033006
2:90594529
3:129551677
4:113108920
使用本框架进行开发,入门简单,开发效率高,性能优越,更有详尽的API文档,有相关的使用帮助文章、示例文章、更甚有相关的视频教程及辅助工具。
关键还是免费与开源,实在是居家旅行、项目开发、学习研究的必备良品!!!!!!
框架下载:下载中心
帖子搜索
论坛版块
最新帖子
最新评论
- 请问我怎么找不到下载地址
- 崇拜中,试问博主为何敢挑战当今众多<b>数据持久化框架</b>的先驱们?
- 直接用个mongoDB就好了 倒腾来倒腾去
- 首先,感谢下楼主! 我在Oracle导出到SQLite的时候,链接数据库都提示“connect successfully” 然后点击那个“import Go”按钮后,就提示停止工作了。 我的是Win7平台。
- 请问是否可以同时支持多个数据库?比如多个版本的sqlserver,或者同时支持sqlserver 和oracle?
- 秋天大哥,在Winform下使用SQLite,为什么每次在new MAction的时候都提示"数据库字段加载失败!请检查数据库链接及表名(weather)是否存在!"? 我的配置是参考您的指南写的: <appSettings> <add key="SQLiteDbNameForApp" value="Data/tq.db"/> <add key="IsWriteLog" value="true"/> <add key="LogPath" value="Log/"/> </appSettings> <connectionStrings> <add name="Conn" connectionString="Data Source={0}" providerName="System.Data.SQLite"/> </connectionStrings> 辛苦秋天大哥了!
- 云 搞成xml文档不久可以了
- 能否用在winform中?
- 你好,我对你这个挺有兴趣想再了解下信息 请加我MSN:ntwuhaohao@hotmail.com
- 真没看到特色的地方,找了半天,唉



