数据的增删改查(三层)<!--待补充-->
进行数据操作必然少了对数据的增删改查,用代码生成器生成的代码不是那么满意!方便在今后使用,这里就主要写“数据访问层(Dal)”
既然这里提到三层架构:有必要将三层内容在这里详细介绍一下(待补充)
注:这里进行数据库操作时,进行参数化查询语句就是我不太推荐的一种写法!
参数化查询推荐写法见:http://www.cnblogs.com/fengxuehuanlin/p/5362697.html
/// <summary>
/// 是否存在该记录
/// </summary>
public bool Exists(long Id)
{
string sql = "select count(*) Name from t_temp where ID=@id";
MySqlParameter[] param = { new MySqlParameter("@id", Id) };
long data=(long)MySqlHelper.ExecuteScalar(sql, param);
if (data > )
{
return true;
}
return false;
}
/// <summary>
/// 增加一条数据
/// </summary>
public long Add(Model model)
{
string sql = "insert into t_temp (Name) values (@name)";
MySqlParameter[] param = { new MySqlParameter("@name", model.Name) };
return MySqlHelper.ExecuteNonQuery(sql, param);
}
/// <summary>
/// 更新一条数据
/// </summary>
public bool Update(Model model)
{
string sql = "Update t_temp set Name=@name where ID=@id";
MySqlParameter[] param = { new MySqlParameter("@name", model.Name), new MySqlParameter("@id", model.Id) };
if (MySqlHelper.ExecuteNonQuery(sql, param) > )
{
return true;
}
return false;
}
/// <summary>
/// 删除一条数据
/// </summary>
public bool Delete(long Id)
{
string sql = "delete from t_temp where ID=@id";
MySqlParameter[] param = { new MySqlParameter("@id", Id) };
if (MySqlHelper.ExecuteNonQuery(sql, param) > )
{
return true;
}
return false;
}
/// <summary>
/// 批量删除数据
/// </summary>
public bool DeleteList(string Idlist)
{
string sql = "delete from t_temp where ID in (" + Idlist + ")";
if (MySqlHelper.ExecuteNonQuery(sql) > )
{
return true;
}
return false;
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public Model GetModel(long Id)
{
string sql = "select ID,Name from t_temp where ID=@id";
MySqlParameter[] param = { new MySqlParameter("@id", Id) };
DataTable table= MySqlHelper.ExecuteQuery(sql, param);
if (table != null)
{
if (table.Rows.Count > )
{
return DataRowToModel(table.Rows[]);
}
}
return null;
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public Model DataRowToModel(DataRow row)
{
Model mod = new Model();
if (row != null)
{
if(!string.IsNullOrEmpty(row["ID"].ToString()))
{
mod.Id=long.Parse(row["ID"].ToString());
}
if (!string.IsNullOrEmpty(row["Name"].ToString()))
{
mod.Name = row["Name"].ToString();
}
}
return mod;
}
数据的增删改查(三层)<!--待补充-->的更多相关文章
- Mybatis框架基于注解的方式,实对数据现增删改查
编写Mybatis代码,与spring不一样,不需要导入插件,只需导入架包即可: 在lib下 导入mybatis架包:mybatis-3.1.1.jarmysql驱动架包:mysql-connecto ...
- dbutils中实现数据的增删改查的方法,反射常用的方法,绝对路径的写法(杂记)
jsp的三个指令为:page,include,taglib... 建立一个jsp文件,建立起绝对路径,使用时,其他jsp文件导入即可 导入方法:<%@ include file="/c ...
- MVC模式:实现数据库中数据的增删改查功能
*.数据库连接池c3p0,连接mysql数据库: *.Jquery使用,删除时跳出框,确定是否要删除: *.使用EL和JSTL,简化在jsp页面中插入的java语言 1.连接数据库 (1)导入连接数据 ...
- Hibernate3回顾-5-简单介绍Hibernate session对数据的增删改查
5. Hibernate对数据的增删改查 5.1Hibernate加载数据 两种:get().load() 一. Session.get(Class arg0, Serializable arg1)方 ...
- Mybatis学习总结(二)—使用接口实现数据的增删改查
在这一篇中,让我们使用接口来实现一个用户数据的增删改查. 完成后的项目结构如下图所示: 在这里,person代表了一个用户的实体类.在该类中,描述了相关的信息,包括id.name.age.id_num ...
- vue实现对表格数据的增删改查
在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...
- Node.js + MySQL 实现数据的增删改查
通过完成一个 todo 应用展示 Node.js + MySQL 增删改查的功能.这里后台使用 Koa 及其相应的一些中间件作为 server 提供服务. 初始化项目 $ mkdir node-cru ...
- mysql学习笔记一 —— 数据的增删改查
1.连接mysql mysql 直接回车(是以root身份,密码空,登陆的是本机localhost) [root@www mysql]# mysql -uroot -p123 -S /var/lib/ ...
- vue实现对数据的增删改查(CURD)
vue实现对数据的增删改查(CURD) 导语: 网上看到一个写的比较好的学习文章,转载分享一下 在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的 ...
随机推荐
- Cassandra 单机入门例子——有索引
入门例子: http://wiki.apache.org/cassandra/GettingStarted 添加环境变量并source生效,使得可以在任意位置执行cassandra/bin安装目录下的 ...
- Java语言Socket接口用法详解
Socket接口用法详解 在Java中,基于TCP协议实现网络通信的类有两个,在客户端的Socket类和在服务器端的ServerSocket类,ServerSocket类的功能是建立一个Serve ...
- Struts2框架学习(三) 数据处理
Struts2框架学习(三) 数据处理 Struts2框架框架使用OGNL语言和值栈技术实现数据的流转处理. 值栈就相当于一个容器,用来存放数据,而OGNL是一种快速查询数据的语言. 值栈:Value ...
- iostat中 %util高 应用延迟高
经过长时间监控,发现iostat 中的%util居高不下,一直在98%上下,说明带宽占用率极高,遇到了瓶颈. 且读写速度很慢,经过排查,发现是HBA卡出现问题,更换后,用dd if命令测试,磁盘的读写 ...
- Spring @Aspect切面参数传递
Spring @Aspect切面参数传递: Xml: <?xml version="1.0" encoding="UTF-8"?> <bean ...
- JavaScript 轻松创建级联函数
级联函数是什么? 在一行代码上,调用一个接一个的方法.这种技术在 JQuery 或者其他 JavaScript 库中是非常常见的. 代码如下: $('#myDiv').fadeOut().html(' ...
- JavaScript中DOM的层次节点(一)
DOM是针对HTML和XML文档的一个API,描绘了一个层次化的节点树,允许开发人员添加.修改.删除节点的一部分. DOM将HTML和XML文档描绘成一个有多个节点构成的结构,节点分为12种不同的节点 ...
- SQL Server 2008 sp3启用1433端口的方法
SQL Server 2008 SP3一般的默认端口是1433,但有时候会遇到一些问题导致1433端口无法启用.这是笔者给大家指导如何开启1433端口 工具/原料 SQL Server 2008 ...
- Wireshark网络抓包(二)——过滤器
一.捕获过滤器 选中捕获选项后,就会弹出下面这个框,在红色输入框中就可以编写过滤规则. 1)捕获单个IP地址 2)捕获IP地址范围 3)捕获广播或多播地址 4)捕获MAC地址 5)捕获所有端口号 6) ...
- C++编程练习(12)----“有向图的拓扑排序“
设G={V,E}是一个具有 n 个顶点的有向图,V中的顶点序列 v1,v2,......,vn,满足若从顶点 vi 到 vj 有一条路径,则在顶点序列中顶点 vi 必在顶点 vj 之前.则称这样的顶点 ...