模板页显示Excel数据Gridview增删改查
- <%@ Page Title="主页" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
- CodeBehind="Default.aspx.cs" Inherits="WebApplication1._Default" %>
- <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
- </asp:Content>
- <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
- <h2>
- 欢迎使用 ASP.NET!
- </h2>
- <p>
- 若要了解关于 ASP.NET 的详细信息,请访问 <a href="http://www.asp.net/cn" title="ASP.NET 网站">www.asp.net/cn</a>。
- </p>
- <p>
- 您还可以找到 <a href="http://go.microsoft.com/fwlink/?LinkID=152368"
- title="MSDN ASP.NET 文档">MSDN 上有关 ASP.NET 的文档</a>。
- </p>
- <p>
- <asp:Button ID="Button1" runat="server" Text="显示Excel数据"
- onclick="Button1_Click" />
- </p>
- <p>
- <asp:GridView ID="GridView1" runat="server" Width="100%">
- <Columns>
- <asp:TemplateField HeaderText="操作">
- <ItemTemplate>
- <asp:Button ID="Button3" runat="server" Text="删除"
- CommandArgument='<%# Eval("编号") %>' onclick="Button3_Click" />
- <asp:Button ID="Button4" runat="server" Text="编辑"
- CommandArgument='<%# Eval("编号") %>' onclick="Button4_Click" />
- </ItemTemplate>
- </asp:TemplateField>
- </Columns>
- </asp:GridView>
- </p>
- <p>
- 编号:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
- </p>
- <p>
- 姓名:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
- </p>
- <p>
- 性别: <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
- </p>
- <p>
- <asp:Button ID="Button2" runat="server" Text="新增" onclick="Button2_Click" />
- <asp:Button ID="Button5" runat="server" Text="提交" onclick="Button5_Click"
- style="height: 21px" />
- </p>
- <p>
- </p>
- <p>
- </p>
- <p>
- </p>
- <p>
- </p>
- </asp:Content>
- using System;
- 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;
- namespace WebApplication1
- {
- public partial class _Default : System.Web.UI.Page
- {
- string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR=yes'";
- protected void Page_Load(object sender, EventArgs e)
- {
- string fileName = "content/student.xls";
- fileName = Server.MapPath(fileName);
- connStr = string.Format(connStr,fileName);//连接字符串
- }
- protected void Button1_Click(object sender, EventArgs e)
- {
- //读取student.xls文件中的学生数据
- BindList();
- }
- private void BindList()
- {
- string sql = "select * from [Sheet1$]";
- OleDbConnection conn = new OleDbConnection(connStr);
- conn.Open();
- OleDbCommand cmd = new OleDbCommand(sql, conn);
- OleDbDataAdapter da = new OleDbDataAdapter(cmd);
- DataTable dt = new DataTable();
- da.Fill(dt);
- conn.Close();
- GridView1.DataSource = dt;
- GridView1.DataBind();
- }
- //新增
- protected void Button2_Click(object sender, EventArgs e)
- {
- string sql = "insert into [Sheet1$] values(@a,@b,@c)";
- OleDbConnection conn = new OleDbConnection(connStr);
- conn.Open();
- OleDbCommand cmd = new OleDbCommand(sql,conn);
- OleDbParameter[] pm = new OleDbParameter[];
- pm[] = new OleDbParameter("@a",TextBox1.Text);
- pm[] = new OleDbParameter("@b",TextBox2.Text);
- pm[] = new OleDbParameter("@c",TextBox3.Text);
- foreach (OleDbParameter item in pm)
- {
- cmd.Parameters.Add(item);
- }
- int i = cmd.ExecuteNonQuery();
- conn.Close();
- if (i>)
- {
- Response.Write("新增成功");
- BindList();
- }
- else
- {
- Response.Write("新增失败");
- }
- }
- //删除
- protected void Button3_Click(object sender, EventArgs e)
- {
- Button bt= sender as Button;
- string id = bt.CommandArgument;
- }
- //编辑
- protected void Button4_Click(object sender, EventArgs e)
- {
- string sql = "select * from [Sheet1$] where 编号=@a";
- Button bt = sender as Button;
- string id = bt.CommandArgument;
- OleDbParameter pm = new OleDbParameter("@a", id);
- OleDbConnection conn = new OleDbConnection(connStr);
- conn.Open();
- OleDbCommand cmd = new OleDbCommand(sql,conn);
- cmd.Parameters.Add(pm);
- OleDbDataReader sdr = cmd.ExecuteReader();
- bool b = sdr.Read();
- if (b==true)
- {
- TextBox1.Text = sdr["编号"].ToString();
- TextBox2.Text = sdr["姓名"].ToString();
- TextBox3.Text = sdr["性别"].ToString();
- }
- conn.Close();
- }
- //提交
- protected void Button5_Click(object sender, EventArgs e)
- {
- string sql = "update [Sheet1$] set 姓名=@b,性别=@c where 编号=@a";
- OleDbParameter[] pm = new OleDbParameter[];
- pm[] = new OleDbParameter("@a",TextBox1.Text);
- pm[] = new OleDbParameter("@b",TextBox2.Text);
- pm[] = new OleDbParameter("@c",TextBox3.Text);
- OleDbConnection conn = new OleDbConnection(connStr);
- conn.Open();
- OleDbCommand cmd = new OleDbCommand(sql,conn);
- foreach (OleDbParameter item in pm)
- {
- cmd.Parameters.Add(item);
- }
- int i = cmd.ExecuteNonQuery();
- conn.Close();
- if (i>)
- {
- BindList();
- Response.Write("修改成功");
- }
- else
- {
- Response.Write("修改失败");
- }
- }
- }
- }
模板页显示Excel数据Gridview增删改查的更多相关文章
- Node.js + MySQL 实现数据的增删改查
通过完成一个 todo 应用展示 Node.js + MySQL 增删改查的功能.这里后台使用 Koa 及其相应的一些中间件作为 server 提供服务. 初始化项目 $ mkdir node-cru ...
- MVC模式:实现数据库中数据的增删改查功能
*.数据库连接池c3p0,连接mysql数据库: *.Jquery使用,删除时跳出框,确定是否要删除: *.使用EL和JSTL,简化在jsp页面中插入的java语言 1.连接数据库 (1)导入连接数据 ...
- vue实现对表格数据的增删改查
在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...
- vue实现对数据的增删改查(CURD)
vue实现对数据的增删改查(CURD) 导语: 网上看到一个写的比较好的学习文章,转载分享一下 在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的 ...
- 基于vue-easytable实现数据的增删改查
基于vue-easytable实现数据的增删改查 原理:利用vue的数据绑定和vue-easetable的ui完成增删改查 后端接口: 1.条件查询表中数据 http://localhost:4795 ...
- vue实现数据的增删改查
在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...
- Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查
本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...
- Mybatis框架基于注解的方式,实对数据现增删改查
编写Mybatis代码,与spring不一样,不需要导入插件,只需导入架包即可: 在lib下 导入mybatis架包:mybatis-3.1.1.jarmysql驱动架包:mysql-connecto ...
- dbutils中实现数据的增删改查的方法,反射常用的方法,绝对路径的写法(杂记)
jsp的三个指令为:page,include,taglib... 建立一个jsp文件,建立起绝对路径,使用时,其他jsp文件导入即可 导入方法:<%@ include file="/c ...
随机推荐
- em和rem及rem在移动的应用
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <style t ...
- 夺命雷公狗---微信开发56----微信js-sdk接口开发(3)所有接口功能
按照上节课程里面的介绍,我们可以先将刚才在signatrue.php里获取到的信息填写进jssdk.htm模版文件里填写各个权限的参数 jssdk.htm代码如下: <!DOCTYPE html ...
- opencv载入,显示及保存图像
1.声明一个表示图像的变量,在OpenCV2中,这个变量是cv::Mat类型,该类是用于保存图像以及其他矩阵数据的数据结构.默认情况下它们的尺寸为0. cv::Mat image; // ...
- Openstack的error僵尸实例的解决办法
在我们对集群环境进行各种调整的情况下,很容易产生一些僵尸实例. 僵尸实例主要是没有该主机,但是在dashboard上,数据库中存在,解决办法网络上有的人给出了繁杂的修改数据库的方法,其实按照下面的命令 ...
- plsql 简单介绍
plsql的安装: 1. 安装plsql developer 2. 下载,解压instantclient到任意目录 3. 在instantclient解压目录下,新建NETWORK目录,在该目录下建A ...
- JavaSPI机制学习笔记
最近在阅读框架源代码时,常常看到 SPI 的子包, 忍不住查了下: Service Provider Interface : 服务提供接口. JavaSPI 实际上是“基于接口的编程+策略模式+配置文 ...
- 6.1:SportStore:一个真实的应用
之前的小例子让我们演示了AngularJS的一些特性,但他们缺少上下文.要解决这个问题,作者要创建一个简单单真实的电子商务应用. 作者将创建一个在线产品分类,客户可以通过分类和页面浏览,一个购物车用户 ...
- ios tabbar 文字位置
[nav.tabBarItem setTitlePositionAdjustment)];
- discuz模板文件列表
template/default/common模板公共文件夹,全局相关 |--block_forumtree.htm 树形论坛版块分支js文件 |--block_thread.htm特 ...
- Oracle性能优化--DBMS_PROFILER
想看到过程或者函数执行每一步的过程:想看到每一步所占的时间吗?借助profiler吧:它可以满足你来分析过程/函数执行比较久:可以直接快速找到病因:从而可以优化那一步需要优化下. 一 ...