java mysql dbhelper_DbHelper通用数据库类及增删改 使用示例
DbHelper db = new DbHelper();
protected void Page_Load(object sender, EventArgs e)
{
}
//新增数据
protected void Button1_Click(object sender, EventArgs e)
{
List ftvlist = new List();
ftvlist.Add(new FieldTypeValue("[D_Name]", "测试用户" + DateTime.Now.ToString("yyyyMMddhhmmss")));
ftvlist.Add(new FieldTypeValue("[D_Password]", "测试密码" + DateTime.Now.ToString("yyyyMMddhhmmss")));
ftvlist.Add(new FieldTypeValue("[D_Else]", "测试备注" + DateTime.Now.ToString("yyyyMMddhhmmss")));
string sql = BuilderSql.createInsertSql("TestTable", ftvlist);
int opFlag = db.ExecuteNonQuery(db.GetSqlStringCommand(sql));
if (opFlag > 0) { JsHelper.Alert("新增成功!", Page); } else { JsHelper.Alert("新增失败!", Page); };
}
//修改数据
protected void Button2_Click(object sender, EventArgs e)
{
List ftvlist = new List();
ftvlist.Add(new FieldTypeValue("[D_Name]", "这是个错误dsadsadasd"));
ftvlist.Add(new FieldTypeValue("[D_Password]", "aaa这是个错误,我还没有处理"));
ftvlist.Add(new FieldTypeValue("[D_Else]", "aaa这是个错误,我还没有处理"));
string sql = BuilderSql.createUpdateSql("TestTable", ftvlist, "D_ID", "1");
int opFlag = db.ExecuteNonQuery(db.GetSqlStringCommand(sql));
if (opFlag > 0) { JsHelper.Alert("修改成功!", Page); } else { JsHelper.Alert("修改失败!", Page); };
}
//删除数据
protected void Button3_Click(object sender, EventArgs e)
{
string sql = BuilderSql.createDeleteSql("[TestTable]", "[D_Id]", "1");
int opFlag = db.ExecuteNonQuery(db.GetSqlStringCommand(sql));
if (opFlag > 0) { JsHelper.Alert("删除成功!", Page); } else { JsHelper.Alert("删除失败!", Page); };
}
//事务提交
protected void Button4_Click(object sender, EventArgs e)
{
using (Trans t = new Trans())
{
try
{
db.ExecuteNonQuery(db.GetSqlStringCommand("insert into TestTable(D_Name,D_Password,D_Else) values('aaaaa1','bbbbbb1','cccccc1')"), t);
db.ExecuteNonQuery(db.GetSqlStringCommand("insert into TestTable(D_Name,D_Password,D_Else) values('aaaaa2','bbbbbb2','cccccc2')"), t);
db.ExecuteNonQuery(db.GetSqlStringCommand("insert into TestTable(D_Name,D_Password,D_Else) values('aaaaa3','bbbbbb3','cccccc3')"), t);
db.ExecuteNonQuery(db.GetSqlStringCommand("insert into TestTable(D_Name,D_Password,D_Else) values('aaaaa4','bbbbbb4','cccccc4')"), t);
db.ExecuteNonQuery(db.GetSqlStringCommand("insert into TestTable(D_Name,D_Password,D_Else) values('aaaaa5','bbbbbb5','cccccc5')"), t);
t.Commit();
JsHelper.Alert("事务提交成功!", Page);
}
catch
{
t.RollBack();
JsHelper.Alert("事务提交失败!", Page);
}
}
}
//分页控件分页
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGridViewData();
}
}
private void BindGridViewData()
{
string strCondition = "";
MSCL.PageHelper wp = new MSCL.PageHelper();
wp.TableName = "TestTable";
wp.KeyField = "D_Id";
wp.SortName = "D_Id";
wp.Condition = strCondition;
wp.CurrentPageIndex = AspNetPager1.CurrentPageIndex;
wp.PageSize = AspNetPager1.PageSize;//=PageSize;
DataTable dt = wp.GetDataTableMyPage();
GridView1.DataSource = dt;
GridView1.DataBind();
AspNetPager1.RecordCount = wp.RecordCount;
AspNetPager1.CustomInfoHTML = " 共" + wp.RecordCount.ToString() + "条记录/";
AspNetPager1.CustomInfoHTML += " " + wp.PageCount.ToString() + "页";
AspNetPager1.CustomInfoHTML += " 当前第" + AspNetPager1.CurrentPageIndex.ToString() + "页";
}
protected void AspNetPager1_PageChanged(object sender, EventArgs e)
{
BindGridViewData();
}
//字符串分页
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bindData();
}
}
protected void bindData()
{
int count = 0; //记录总数
int pageSize = 10; //每页显示记录数
int pageIndex = (Request["PageIndex"] == null) ? 1 : Convert.ToInt32(Request["PageIndex"]);
DataSet ds = MSCL.PageHelper.PageList("TestTable", pageSize, pageIndex, "D_ID", true, "", out count);
GridView1.DataSource = ds;
GridView1.DataBind();
ltPage.Text = MSCL.PageHelper.ToSplitPageHtml(count, pageSize, 5, 1, "", true);
}
以上我们好像没有指定数据库连接字符串,大家如果看下DbHelper的代码,就知道要使用它必须在config中配置两个参数,如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace FairHR.Util
{
#region 数据表字段类
///
/// 数据表字段类
///
public class FieldTypeValue
{
///
/// 字段容器
///
/// 字段名
/// 字段值
///
public FieldTypeValue(string fieldName, string fieldValue, bool isNum)
{
this.fieldName = fieldName;
this.fieldValue = fieldValue;
this.isNum = isNum;
}
///
/// 字段容器
///
/// 字段名
/// 字段值
public FieldTypeValue(string fieldName, string fieldValue)
{
this.fieldName = fieldName;
this.fieldValue = fieldValue;
}
private string fieldName;
///
/// 字段名
///
public string FieldName
{
get { return fieldName; }
set { fieldName = value; }
}
private bool isNum = false;
///
/// 是否数字
///
public bool IsNum
{
get { return isNum; }
set { isNum = value; }
}
private string fieldValue;
///
/// 字段值
///
public string FieldValue
{
get { return fieldValue; }
set { fieldValue = value; }
}
}
#endregion
#region SQL语句的构造类
///
/// SQL语句的构造类
///
public class BuilderSql
{
///
/// 构造新增Insert语句
///
/// 表名
/// list
///
public static string createInsertSql(string tableName, List ftvlist)
{
StringBuilder sb = new StringBuilder();
sb.Append(" insert into ");
sb.Append(tableName);
sb.Append("(");
for (int i = 0; i < ftvlist.Count; i++)
{
FieldTypeValue ftv = (FieldTypeValue)ftvlist[i];
if (i != ftvlist.Count - 1)
{
sb.Append(ftv.FieldName + ",");
}
else
{
sb.Append(ftv.FieldName);
}
}
sb.Append(") values(");
for (int i = 0; i < ftvlist.Count; i++)
{
FieldTypeValue ftv = (FieldTypeValue)ftvlist[i];
if (ftv.IsNum)
{
if (i != ftvlist.Count - 1)
{
sb.Append(ftv.FieldValue + ",");
}
else
{
sb.Append(ftv.FieldValue);
}
}
else
{
if (i != ftvlist.Count - 1)
{
sb.Append("'" + ftv.FieldValue + "',");
}
else
{
sb.Append("'" + ftv.FieldValue + "'");
}
}
}
sb.Append(")");
return sb.ToString();
}
///
/// 构造更新Update语句
///
/// 表名
/// list
/// 条件字段名
/// 条件字段值
///
public static string createUpdateSql(string tableName, List ftvlist, string pkName, string pkValue)
{
StringBuilder sb = new StringBuilder();
sb.Append(" update ");
sb.Append(tableName);
sb.Append(" set");
for (int i = 0; i < ftvlist.Count; i++)
{
FieldTypeValue ftv = (FieldTypeValue)ftvlist[i];
if (i != ftvlist.Count - 1)
{
if (ftv.IsNum)
{
sb.Append(" " + ftv.FieldName + "=" + ftv.FieldValue + ",");
}
else
{
sb.Append(" " + ftv.FieldName + "='" + ftv.FieldValue + "',");
}
}
else
{
if (ftv.IsNum)
{
sb.Append(" " + ftv.FieldName + "=" + ftv.FieldValue + "");
}
else
{
sb.Append(" " + ftv.FieldName + "='" + ftv.FieldValue + "'");
}
}
}
sb.Append(" where " + pkName + "='" + pkValue + "'");
return sb.ToString();
}
///
/// 构造删除Delete语句
///
/// 表名
/// 条件字段名
/// 条件字段值
///
public static string createDeleteSql(string tableName, string pkName, string pkValue)
{
StringBuilder sb = new StringBuilder();
sb.Append(" delete from ");
sb.Append(tableName);
sb.Append(" where " + pkName + " = '" + pkValue + "'");
return sb.ToString();
}
}
#endregion
}
java mysql dbhelper_DbHelper通用数据库类及增删改 使用示例相关推荐
- 爬虫使用mysql创建新数据库并进行增删改查操作
前言: 本文参考:Python3使用mysql创建新数据库并进行增删改查操作https://blog.csdn.net/Anwel/article/details/79919646 该文章描述了爬虫爬 ...
- 数据库基本操作及增删改查示例
用的是pg数据库进行操作,初学数据库记录简单的数据库操作命令:虽然数据库工具Navicat功能强大但基本的命令还是需要知道的.以下是我自学的数据库小白可以试着看看,大佬的话留个方式小弟要膜拜 目录 1 ...
- jaba窗体连接mysql增删改查_知识实现——Java使用jdbc连接MySql数据库,实现增删改查...
Java使用jdbc连接MySql数据库,实现增删改查 首先,导入MySql连接数据库的jar包,我用的是 mysql连接jar包 DB类,用于获得数据库连接 import java.sql.Driv ...
- java调用oracle删除,使用IDEA对Oracle数据库进行简单增删改查操作
1.1 java中的数据存储技术 在java中,数据库存取技术可分为如下几类: 1.jdbc直接访问数据库 2.jdo(java data object)是java对象持久化的新的规范,也是一个用于存 ...
- mysql创建数据表列子,MySQL 创建数据库及简单增删改查
MySQL 创建数据库及简单增删改查 我们可以在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下: CREATE DATABASE 数据库名; 登入: Enter passwor ...
- java 怎么快速找到实现类_JAVA懒开发:FreeMarker快速实现类的增删改查接口
太懒,不多说看图,mybatis-generator工具执行后的项目结构 这个时候没得额service接口类,和service实现类,也没的controller类 执行引擎工具类BeanGenerat ...
- python数据库教程_Python连接mysql数据库及简单增删改查操作示例代码
1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...
- 数据库的操作 增删改查 mysql
数据库的操作 增删改查 mysql 登陆数据库 查看全部的数据库 系统提供的库,除了 test 是给我们练手的 其它的不要碰 mysql库,保存了系统重要内容,比如帐户 root帐户的用户名,密码,就 ...
- thinkphp连mysql增删改查_ThinkPHP5.1框架数据库链接和增删改查操作示例
本文实例讲述了ThinkPHP5.1框架数据库链接和增删改查操作.分享给大家供大家参考,具体如 本文实例讲述了ThinkPHP5.1框架数据库链接和增删改查操作.分享给大家供大家参考,具体如下: 一. ...
最新文章
- 收藏 | Tensorflow实现的深度NLP模型集锦(附资源)
- DFS、DTFT、DFT、 FFT的定义和区别
- spring aop实现过程之一代理对象的生成
- python最全知识点_史上最全的Python面向对象知识点疏理
- php扩展库加密如何解密,如何利用Mcrypt扩展库进行加密和解密_PHP教程
- mysql 代码怎么优化_Mysql性能优化
- 计算机程序和系统股票走势分析,证券走势指标匹配分析系统的设计与实现
- python+selenium 爬携程机票价格
- 程序员放弃月薪2W的工作,改行做销售,结果垫底,网友:瞎折腾
- java线程状态_java并发编程之线程状态
- html鼠标变成小手_什么牌子的鼠标好用?2020双十一鼠标选购建议和产品推荐
- 大数据导论章节答案_苹果手机一般能用几年 一份大数据告诉你答案
- 米莱迪机器人加物理攻击_自拍、航拍、运动拍“ALL IN ONE”,臻迪PowerEgg X开启全新未来...
- 2.4G频段的无线收发芯片 SI24R1 问题汇总解答
- 2021年边缘计算融资汇总
- TI-C6657开发板烧录步骤
- 为什么手机移动4G信号满格,网速却非常慢?这些原因你知道吗
- GIT CZ的错误解决
- 京东API接口:item_get - 获得JD商品详情
- 【Python】关于安装爬虫框架scrapy的感悟