.net ibatis 连接mysql_Ibatis.Net 数据库操作(四)

一、查询select

还记得第一篇示例中的是如何读出数据库里的3条数据吗?

就是调用了一个QueryForList方法,从方法名就知道,查询返回列表。

1、QueryForList  返回List强类型数据集合

来看看方法原型:

public IList QueryForList(string statementName, objectparameterObject);public IList QueryForList(string statementName, objectparameterObject);public void QueryForList(string statementName, object parameterObject, IListresultObject);public void QueryForList(string statementName, objectparameterObject, IList resultObject);public IList QueryForList(string statementName, object parameterObject, int skipResults,intmaxResults);public IList QueryForList(string statementName, object parameterObject, int skipResults, int maxResults);

有原型可以看出,其实只是3个参数不同方法,只是分为泛型与非泛型两个版本而已。

这个主要说说,参数skipResults,表示从结果行掉过skipResults行后返回,maxResults表示返回的行数。这个在分页中应该会用到。

下面来看一个最简单的示例:

xml映射文件中

select * from person

程序中的代码:

IList ListPerson = mapper.QueryForList("SelectAllPerson", null);

返回就是IList的集合实例了。这个不多说。

2、QueryForObject  返回一行数据对应程序的实体类实例

下面来看看方法原型:

public object QueryForObject(string statementName, objectparameterObject);public T QueryForObject(string statementName, objectparameterObject);public T QueryForObject(string statementName, objectparameterObject, T instanceObject);public object QueryForObject(string statementName, object parameterObject, object resultObject)

不多说,下面来看看实例:

xml映射文件:

select * from person where Id = #Id#  

程序代码:

PersonModel p = mapper.QueryForObject("SelectOnePerson", 1);   //1就是存入Sql语句的参数

返回就是一个PersonModel对象的实例了。

3、QueryWithRowDelegate  通过委托过滤返回的数据

下面来看看方法原型:

IList QueryWithRowDelegate(string statementName, object parameterObject, RowDelegaterowDelegate);

IList QueryWithRowDelegate(string statementName, object parameterObject, RowDelegate rowDelegate);

4、QueryForDictionary

5、QueryForMap

以上两个都不懂,看以后有没有用到,再算吧。

二、Insert

insert插入数据的方式比较简单,就只得一个方法Insert方法:

insert into Person (Name)

values(#Name#)SELECT CAST(@@IDENTITY as int) as Id

因此此处Id设为了自增,所以SQL语句里面并不需要再设置Id

程序代码如下:

PersonModel p = newPersonModel();

p.Name= "曹操";return (int)mapper.Insert("InsertOne",p);

三、Update

Update方法同样简单,也只是条用一下Update方法。

映射文件:

Update Person Set Name = #Name# Where Id = #Id#

程序代码如下:

PersonModel p = newPersonModel();

p.Id= 5;

p.Name= "张三";return (int)mapper.Update("UpdateOne", p);

四、Delete

删除方法与上面一样,我都感觉自己都有点啰嗦了。

映射文件:

Delete Person Where Id = #Id#

程序代码:

PersonModel p = newPersonModel();

p.Id= 5;

p.Name= "张三";return (int)mapper.Delete("DeleteOne", p);//return (int)mapper.Delete("DeleteOne", 5);//另外这样也可以

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值