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. P1160 队列安排 luogu洛谷

    题目描述 一个学校里老师要将班上NNN个同学排成一列,同学被编号为1∼N1\sim N1∼N,他采取如下的方法: 先将111号同学安排进队列,这时队列中只有他一个人: 2−N2-N2−N号同学依次入列 ...

  2. WaitForSingleObject的详细用法

    在多线程的情况下,有时候我们会希望等待某一线程完成了再继续做其他事情,要实现这个目的,可以使用Windows API函数WaitForSingleObject,或者WaitForMultipleObj ...

  3. matlab的conv2、imfilter、filter2

    1 conv2函数 C=conv2(A,B,shape); %卷积滤波 参数说明: A:输入图像 B:卷积核 shape的可选值为full.same.valid. 1)当shape=full时,返回全 ...

  4. ueditor保存出现 从客户端(Note="<p>12345</p>")中检测到有潜在危险的 Request.Form 值

    检测到有潜在危险的 Request.Form 值   这种问题是因为你提交的Form中有HTML字符串,例如你在TextBox中输入了html标签,或者在页面中使用了HtmlEditor组件等,解决办 ...

  5. 安装Drush工具 -Centos

    Drush可以说是Drupal的瑞士***,只要你使用过一段时间的Drush,一但没有它的话,你会觉得很不方便.可如果通过我在前面博文中所讲的方法来安装Drush的话,是不能够支持Drupal8的,所 ...

  6. 深入理解 JVM(上)

    菜鸟拙见,望请纠正(首先:推荐一本书[链接:https://pan.baidu.com/s/15I062n5LPYtRmueAAUFuFA 密码:kyo1]) 一:JVM体系概述 1:JVM是运行在操 ...

  7. CF932F Escape Through Leaf 斜率优化、启发式合并

    传送门 \(DP\) 设\(f_i\)表示第\(i\)个节点的答案,\(S_i\)表示\(i\)的子节点集合,那么转移方程为\(f_i = \min\limits_{j \in S_i} \{a_i ...

  8. 字符串中去除多余的空格保留一个(C#)

    在C#的字符串,其中有许多空格,现要求是把多余的空格去除保留一个.原理是使用Split()方法进行分割,分割有一个选项是RemoveEmptyEntries,然后再把分割后的字符串Join起来. st ...

  9. [Spark][Python]DataFrame select 操作例子

    [Spark][Python]DataFrame中取出有限个记录的例子 的 继续 In [4]: peopleDF.select("age")Out[4]: DataFrame[a ...

  10. 你要的fpga&数字前端笔面试题都在这儿了

    转自http://ninghechuan.com 你要的FPGA&数字前端笔面试题来了 FPGA&ASIC基本开发流程 题目:简述ASIC设计流程,并列举出各部分用到的工具. 勘误:C ...