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通用数据库类及增删改 使用示例相关推荐

  1. 爬虫使用mysql创建新数据库并进行增删改查操作

    前言: 本文参考:Python3使用mysql创建新数据库并进行增删改查操作https://blog.csdn.net/Anwel/article/details/79919646 该文章描述了爬虫爬 ...

  2. 数据库基本操作及增删改查示例

    用的是pg数据库进行操作,初学数据库记录简单的数据库操作命令:虽然数据库工具Navicat功能强大但基本的命令还是需要知道的.以下是我自学的数据库小白可以试着看看,大佬的话留个方式小弟要膜拜 目录 1 ...

  3. jaba窗体连接mysql增删改查_知识实现——Java使用jdbc连接MySql数据库,实现增删改查...

    Java使用jdbc连接MySql数据库,实现增删改查 首先,导入MySql连接数据库的jar包,我用的是 mysql连接jar包 DB类,用于获得数据库连接 import java.sql.Driv ...

  4. java调用oracle删除,使用IDEA对Oracle数据库进行简单增删改查操作

    1.1 java中的数据存储技术 在java中,数据库存取技术可分为如下几类: 1.jdbc直接访问数据库 2.jdo(java data object)是java对象持久化的新的规范,也是一个用于存 ...

  5. mysql创建数据表列子,MySQL 创建数据库及简单增删改查

    MySQL 创建数据库及简单增删改查 我们可以在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下: CREATE DATABASE 数据库名; 登入: Enter passwor ...

  6. java 怎么快速找到实现类_JAVA懒开发:FreeMarker快速实现类的增删改查接口

    太懒,不多说看图,mybatis-generator工具执行后的项目结构 这个时候没得额service接口类,和service实现类,也没的controller类 执行引擎工具类BeanGenerat ...

  7. python数据库教程_Python连接mysql数据库及简单增删改查操作示例代码

    1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...

  8. 数据库的操作 增删改查 mysql

    数据库的操作 增删改查 mysql 登陆数据库 查看全部的数据库 系统提供的库,除了 test 是给我们练手的 其它的不要碰 mysql库,保存了系统重要内容,比如帐户 root帐户的用户名,密码,就 ...

  9. thinkphp连mysql增删改查_ThinkPHP5.1框架数据库链接和增删改查操作示例

    本文实例讲述了ThinkPHP5.1框架数据库链接和增删改查操作.分享给大家供大家参考,具体如 本文实例讲述了ThinkPHP5.1框架数据库链接和增删改查操作.分享给大家供大家参考,具体如下: 一. ...

最新文章

  1. 收藏 | Tensorflow实现的深度NLP模型集锦(附资源)
  2. DFS、DTFT、DFT、 FFT的定义和区别
  3. spring aop实现过程之一代理对象的生成
  4. python最全知识点_史上最全的Python面向对象知识点疏理
  5. php扩展库加密如何解密,如何利用Mcrypt扩展库进行加密和解密_PHP教程
  6. mysql 代码怎么优化_Mysql性能优化
  7. 计算机程序和系统股票走势分析,证券走势指标匹配分析系统的设计与实现
  8. python+selenium 爬携程机票价格
  9. 程序员放弃月薪2W的工作,改行做销售,结果垫底,网友:瞎折腾
  10. java线程状态_java并发编程之线程状态
  11. html鼠标变成小手_什么牌子的鼠标好用?2020双十一鼠标选购建议和产品推荐
  12. 大数据导论章节答案_苹果手机一般能用几年 一份大数据告诉你答案
  13. 米莱迪机器人加物理攻击_自拍、航拍、运动拍“ALL IN ONE”,臻迪PowerEgg X开启全新未来...
  14. 2.4G频段的无线收发芯片 SI24R1 问题汇总解答
  15. 2021年边缘计算融资汇总
  16. TI-C6657开发板烧录步骤
  17. 为什么手机移动4G信号满格,网速却非常慢?这些原因你知道吗
  18. GIT CZ的错误解决
  19. 京东API接口:item_get - 获得JD商品详情
  20. 【Python】关于安装爬虫框架scrapy的感悟

热门文章

  1. linux自动挂载ext4,创建ext4文件系统,并自动挂载
  2. 个人站点分享优酷视频,手机打不开解决方法
  3. 国标视频平台搭建(三)wvp-28181-pro部署
  4. input 银行卡输入框,四位一空格
  5. css中的单位换算_css绝对长度单位主要有哪些?绝对长度单位之间如何换算?
  6. 52-2018 蓝桥杯省赛 B 组模拟赛(一)java
  7. uni-captcha验证码模块
  8. vue3使用的移动端UI框架,vue移动端ui框架哪个好
  9. 街霸:隆(Ryu)建模及模型下载
  10. 怎么不让计算机不自动装驱动,收藏!不会装驱动怎么办?看这篇就可以了!