ASP.NET中使用gridview可以很容易的把需要的数据动态显示在前台,还可以在表格里加入列进行增删改查,每次点击的时候重新加载数据,gridview也提供了分页等功能,还有一些模版让显示在前台的表格更美观。
此博文是以前写的,那时候写的比较随意,图片也没有经过PS成一张图,略微整理后发出来,虽然上学的时候写的方法都是用英文,当时发出来不是在博客上,读者很多不是软件专业,为了更通俗易懂,所以把上学用的一些方法改成了汉字首字母,比如zsg就是增删改,有的例如binddata()是用的原来的英文描述,由是上学写的稍作修改的代码,此文应该挺适合小白看,没有复杂的内容。

对数据库增删改查,首先要写对数据库连接字符串,如图,这张图示以前找的,现在应该还不过时,上学用的sqlsever数据库,这是后来换新电脑后,只装了个access数据库,所以上网搜了一下access的数据库连接字符串,根据access版本写上后是正确的,这个图片在当时感觉还挺全的。现在有点过时了,access版本也更新了不少。
ASP.NET连接字符串:

--注:此代码也有点问题,比如如下所说情况,但是当时边写边写文章,所以没再改--
如果输入textbox1,没有点击查询,然后输入第二个textbox2,第一个不清空很不舒服。原来只想着查完情况,好预备下一次输入,重置一下,但是没有考虑到前面那种状况,应该两个都清空或者一开始就清空,总之就这样带着吧。--

using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.OleDb;
using System.Text; public partial class ceshi5 : System.Web.UI.Page
{
public static DataTable getdt(string strSQL)
{
string connstring = "provider=Microsoft.Ace.Oledb.12.0;Data Source=D:/da2.accdb";//(链接数据库的字符串)
OleDbConnection conn = new OleDbConnection(connstring);//(根据连接字符串,创建一个链接)
conn.Open();//(打开链接) OleDbDataAdapter da = new OleDbDataAdapter(strSQL, conn);//(根据查询语句,链接,创建一个适配器)
DataTable dt = new DataTable();//(新建一个空表)
da.Fill(dt);//(用适配器da,填满dt新表) conn.Close();//(关闭链接)
return dt;//(返回填满的那个表)
}
public static void zsg(string sql)
{
string connstring = "provider=Microsoft.Ace.Oledb.12.0;Data Source=D:/da2.accdb";//(链接数据库的字符串)
OleDbConnection conn = new OleDbConnection(connstring);//(根据连接字符串,创建一个链接)
OleDbCommand cmd = new OleDbCommand(sql, conn); conn.Open();//(打开链接) cmd.ExecuteNonQuery();
conn.Close();//(关闭链接) }
public void binddata()
{
DataTable dtt = getdt("select kw,info from lodopkeyword");
GridView1.DataSource = dtt;
GridView1.DataBind(); }
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
binddata();
}
}
protected void Btn_wen_Click(object sender, EventArgs e)
{
DataTable dt = getdt("select kw as 问题,info as 答案 from lodopkeyword where kw like'%" + TextBox1.Text + "%'");
GridView1.DataSource = dt;
GridView1.DataBind();
TextBox1.Text = "";
}
protected void Btn_da_Click(object sender, EventArgs e)
{
DataTable dt = getdt("select kw as 问题,info as 答案 from lodopkeyword where info like'%" + TextBox2.Text + "%'");
GridView1.DataSource = dt;
GridView1.DataBind();
TextBox2.Text = "";
}
protected void btninsert_Click(object sender, EventArgs e)
{
string sql = "insert into lodopkeyword(kw,info) values('" + TextBox3.Text + "','" +
TextBox4.Text + "')";
zsg(sql);
binddata();
TextBox3.Text = ""; TextBox4.Text = "";
}
}

由于是以前的文字,图片没有经过整合处理,以前的文章图片较多,较繁杂,取了部分图片,图片经过多次转存有点变形。

【gridview增删改查】数据库查询后lodop打印的更多相关文章

  1. OracleHelper(对增删改查分页查询操作进行了面向对象的封装,对批量增删改操作的事务封装)

    公司的一个新项目使用ASP.NET MVC开发,经理让我写个OracleHelper,我从网上找了一个比较全的OracleHelper类,缺点是查询的时候返回DataSet,数据增删改要写很多代码(当 ...

  2. django之创建第8-1个项目-数据库之增删改查/数据库数据显示在html页面

    1.为test.DB数据库预先创建下面数据 1    张三    16    2015-01-02    12    李四    17    2015-01-04    13    王五    14  ...

  3. Yii数据库操作增删改查-[增加\查询\更新\删除 AR模式]

    在Yii的开发中常常需要去使用Yii的增删改查方法,这些方法又可以多次变化和组合,带来全方位的实现对数据库的处理,下面对这些方法做一些简单的整理和梳理,有遗漏或是BUG,敬请指出.灰常感谢!!! 一. ...

  4. django ORM 增删改查 模糊查询 字段类型 及参数等

    ORM 相关 #sql中的表 #创建表: CREATE TABLE employee( id INT PRIMARY KEY auto_increment , name VARCHAR (), gen ...

  5. 【项目笔记】完成一个基于SSM框架的增删改查的模块后总结的问题

    最近为了准备新工作重新摸出了SSM框架,同时从0学习了JQuery,终于用一周做完了一个包括增删改查的模块(主要是属性太多了,其中一个类50+,复制粘贴耗时). 从中特意记下了几个遇到的问题,总结一下 ...

  6. MyBatis入门2_增删改查+数据库字段和实体字段不一致情况

    本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 当数据库字段和实体bean中属性不一致时 之前数据库P ...

  7. vba增删改查数据库2

    sub test()Set cnn = CreateObject("ADODB.Connection") Set rs = CreateObject("Adodb.Rec ...

  8. android139 360 黑名单 增删改查-数据库操作

    BlackNumberOpenHelper.java package com.itheima52.mobilesafe.db.dao; import android.content.Context; ...

  9. laravel 增删改查 数据库设置 路由设置

    laravel 框架的路由设置: url: http://www.shanzezhao.com/laraverl/my_laravel/public/index.php/indexs laravel ...

随机推荐

  1. JS数组的需要注意的问题

    一.在js中数组是我们经常使用的数据类型,也为我们提供了很多方法.但是有些方法需要注意使用: 1.indexOf(args):匹配一个数组中与args相等的项的索引位置,如果该数组包含这个匹配项则返回 ...

  2. ubuntu RPLIDAR A2的使用

    RPLIDAR是由RoboPeak Team,SlamTec公司开发的低成本2D LIDAR解决方案.它可以扫描6度半径内的360°环境. RPLIDAR的输出非常适合构建地图,做slam或构建3D模 ...

  3. win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建

    win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建 重编译的优点:能够调试的时候看OpenCV的源码. 重编译要得到的东西:Debug版本号和Release版本号 ...

  4. 如何从现有版本1.4.8升级到element UI2.0.11

    现在的项目是定死的依赖以下几个核心组件的版本: vue 2.3.3 element-ui 1.4.8 vue-template-comiler 2.3.3 将以前定死的依赖修改为 vue ^2.3.3 ...

  5. python winpdb远程调试

    1.使用rpdb2.start_embedded_debugger ,注意要将参数fAllowRemote 设置为True 2.winpdb前端GUI使用python2 3.rpdb兼容python2 ...

  6. 大话设计模式:代理模式 C#

    学无止境,精益求精 十年河东,十年河西,莫欺少年穷 学历代表你的过去,能力代表你的现在,学习代表你的将来 所谓代理模式就是你去委托一个人帮你干一件事!例如:你委托我帮你谈恋爱,你委托我帮你陪你媳妇儿逛 ...

  7. React 开发注意事项

    引用自定义组件的时候,组件名称首字母大写 import CustomComponent from "./customComponent "; render(){ return ( ...

  8. Scala学习(八)---Scala继承

    Scala继承 摘要: 在本篇中,你将了解到Scala的继承与Java和C++最显著的不同.要点包括: 1. extends.final关键字和Java中相同 2. 重写方法时必须用override ...

  9. Python基础(上)

    前言 正式开始Python之旅,主要学习内容专注在爬虫和人工智能领域,如Web开发之类将跳过不研究. Python的意思是蟒蛇,源于作者Guido van Rossum(龟叔)喜欢的一部电视剧.所以现 ...

  10. RabbitMQ 发布订阅-实现延时重试队列(参考)

    RabbitMQ消息处理失败,我们会让失败消息进入重试队列等待执行,因为在重试队列距离真正执行还需要定义的时间间隔,因此,我们可以将重试队列设置成延时处理.今天参考网上其他人的实现,简单梳理下消息延时 ...