ASP.net(c#)用类的思想实现插入数据到ACCESS例子
2023-06-13 09:13:56 时间
昨天写了一半,一直没弄清楚当ACCESS数据库的连接代码写成类的时候路径该怎么写,搞了半天,还是用绝对路径解决了,似乎Server.MapPath没法在cs文件中使用.
要实现的功能如下:
尽量用类的思想来完成数据的插入,因为这个例子简单,所以我也就不多说什么.大家自己看代码,不懂的可以到论坛交流.
1、首先是ACCESS数据库的设计,数据库名:myData,表名:student
字段名称 数据类型
sid 自动编号
sname 文本
score 数字
2、建立插入的页面default.aspx,具体代码如下:
<%@ Page Language="C#" Debug="true" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="姓名"></asp:Label>
<asp:TextBox ID="tbxName" runat="server"></asp:TextBox><br />
<br />
<asp:Label ID="Label2" runat="server" Text="成绩"></asp:Label>
<asp:TextBox ID="tbxScore" runat="server"></asp:TextBox><br />
<br />
<asp:Button ID="btnInsert" runat="server" OnClick="btnInsert_Click" Text="插入数据" />
</div>
</form>
</body>
</html>
3、双击default.aspx进入default.aspx.cs,代码如下:
default.aspx.cs的主要代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnInsert_Click(object sender, EventArgs e)
{
student myStu = new student();
myStu.sname = this.tbxName.Text;
myStu.score = Convert.ToInt32(this.tbxScore.Text);
int i= MyClass.insertScore(myStu);
if (i == 1)
{
Response.Write("插入成功");
}
else
{
Response.Write("插入失败");
}
}
}
4、在App_Code建立两个类,一个是MyClass.cs,另一个是student.cs,
MyClass.cs的主要代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
/// <summary>
/// MyClass 的摘要说明
/// </summary>
public class MyClass
{
public MyClass()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public static OleDbConnection creatCon()
{//Data Source=后面请写你自己的数据库的绝对路径
return new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=C:/Documents and Settings/nan/My Documents/Visual Studio 2005/WebSites/WebSite3/App_Data/myData.mdb");
}
public static int insertScore(student myStu)
{
string cmdText = "insert into student(sname,score) values("" + myStu.sname + "","" + myStu.score + "")";
OleDbConnection con = MyClass.creatCon();
con.Open();
OleDbCommand cmd = new OleDbCommand(cmdText, con);
int result = Convert.ToInt32(cmd.ExecuteNonQuery());
con.Close();
return result;
}
}
student.cs的主要代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/// <summary>
/// student 的摘要说明
/// </summary>
public class student
{
public string sname;
public int score;
}
要实现的功能如下:
尽量用类的思想来完成数据的插入,因为这个例子简单,所以我也就不多说什么.大家自己看代码,不懂的可以到论坛交流.
1、首先是ACCESS数据库的设计,数据库名:myData,表名:student
字段名称 数据类型
sid 自动编号
sname 文本
score 数字
2、建立插入的页面default.aspx,具体代码如下:
<%@ Page Language="C#" Debug="true" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="姓名"></asp:Label>
<asp:TextBox ID="tbxName" runat="server"></asp:TextBox><br />
<br />
<asp:Label ID="Label2" runat="server" Text="成绩"></asp:Label>
<asp:TextBox ID="tbxScore" runat="server"></asp:TextBox><br />
<br />
<asp:Button ID="btnInsert" runat="server" OnClick="btnInsert_Click" Text="插入数据" />
</div>
</form>
</body>
</html>
3、双击default.aspx进入default.aspx.cs,代码如下:
default.aspx.cs的主要代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnInsert_Click(object sender, EventArgs e)
{
student myStu = new student();
myStu.sname = this.tbxName.Text;
myStu.score = Convert.ToInt32(this.tbxScore.Text);
int i= MyClass.insertScore(myStu);
if (i == 1)
{
Response.Write("插入成功");
}
else
{
Response.Write("插入失败");
}
}
}
4、在App_Code建立两个类,一个是MyClass.cs,另一个是student.cs,
MyClass.cs的主要代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
/// <summary>
/// MyClass 的摘要说明
/// </summary>
public class MyClass
{
public MyClass()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public static OleDbConnection creatCon()
{//Data Source=后面请写你自己的数据库的绝对路径
return new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=C:/Documents and Settings/nan/My Documents/Visual Studio 2005/WebSites/WebSite3/App_Data/myData.mdb");
}
public static int insertScore(student myStu)
{
string cmdText = "insert into student(sname,score) values("" + myStu.sname + "","" + myStu.score + "")";
OleDbConnection con = MyClass.creatCon();
con.Open();
OleDbCommand cmd = new OleDbCommand(cmdText, con);
int result = Convert.ToInt32(cmd.ExecuteNonQuery());
con.Close();
return result;
}
}
student.cs的主要代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/// <summary>
/// student 的摘要说明
/// </summary>
public class student
{
public string sname;
public int score;
}
相关文章
- [.NET控件]Telerik RadControls for ASP.NET AJAX 2008 Q1 net 2.0 Web.UI「建议收藏」
- .Net Core3.1 SignalR for WPF Asp.net
- .net让Oracle与ASP.NET实现无缝连接(oracleasp)
- .net利用MSSQL连接ASP.NET的办法探索(mssql 连接asp)
- .Net搭配Redis解决高性能应用问题(.net redis)
- 数据库NET开发者操作Oracle数据库的全攻略(net操作oracle)
- Net调用MySQL技术实践(.net 调用mysql)
- NET 与 MySQL 结合能实现优雅的数据事务处理(.net MySQL事物)
- Oracle Net服务重新上线,确保数据安全(oracle net重启)
- C#.Net学习笔记(一)
- VisualC#.Net网络程序开发-Socket篇
- asp.net(c#)利用构造器链的代码
- asp.net程序性能优化的七个方面(c#(或vb.net)程序改进)
- ASP.net(c#)生成html的几种解决方案[思路]
- ASP.NET(C#)中遍历所有控件
- asp.net(c#)文件下载实现代码
- javascript与asp.net(c#)互相调用方法
- asp.net(C#)防sql注入组件的实现代码
- asp.net(C#)开源资源大汇总
- asp.net(c#)动态修改webservice的地址和端口(动态修改配置文件)
- 注册页实现激活邮箱验证(asp.netc#)
- Asp.net,C#加密解密字符串的使用详解
- C#.NET发送邮件的实例代码
- C#中静态的深入理解
- C#中使用ADOMD.NET查询多维数据集的实现方法
- asp.netC#实现解压缩文件的方法