分享
 
 
 

亲密接触ASP.Net(8)

王朝asp·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

我们前面的章节讲了一下如何显示数据库中信息以及DataReader和DataSet的基本用法,

有朋友说不过瘾,要我快快写下面的章节,很是对不起,我实在是没有太多时间,写这

些很慢。(不要扔鸡蛋,最多我不说废话啦)

我们这里还是来讲讲DataSet吧,这是一个功能强大的东东,我们在上一节对它有了一个

初步的了解,这里我们要讲其如果用来操作数据。也是很简单的东东,但是功能强大,要

讲全,不太可能,因为DataSet和DataGrid控件的讲解就占了.Net 帮助的50%以上,而这

个总共有23M...

这里我们建立一个test.mdb数据库,做为测试的数据库,其中有一个名为aspcn的表,数

据结构如图

图 8-1

不需DataSet的数库操作

在讲DataSet的应用之前,我们来看看在ASP.net不使用DataSet如何对数据库进行插入,

更新,删除.

要对数据进行插入,更新,删除而又不能用DataSet,没有办法,只有用SQL直接来啦:)

,我这里只讲一下怎样去插入,因为其它的操作只是改一下SQL语句,我想大家没有问题

吧。这里由于使用的是mdb数据库,那么这次就要用ADO.net来操作了。

我们先看看整个源代码再说

<% @ Page Language="C#" %>

<% @ Import Namespace="System.Data" %>

<% @ Import Namespace="System.Data.ADO" %>

<Script Language="C#" Runat="Server">

public string myConnstring="Driver={Microsoft Access Driver (*.mdb)};

DBQ=c:/test/test.mdb;";

ADOConnection MyConnection;

public void Page_Load(Object src,EventArgs e)

{

//用户提交数据

}

public void submit_Click(Object src,EventArgs e)

{

string username1 = Request.Form["username"];

string address1 = Request.Form["address"];

string school1 = Request.Form["shool"];

string strInsert="insert into aspcn(username,address,school)

values('"+username1+"','"+address1+"','"+school1+"')";

//开始联结

try

{

MyConnection = new ADOConnection(myConnstring);

ADOCommand MyCommand = new ADOCommand(strInsert,MyConnection);

MyConnection.Open();

MyCommand.ExecuteNonQuery();

MyConnection.Close();

Info.Text="数据已经保存";

}

catch(Exception ee)

{

Info.Text="发生错误:"+ee.Message;

}

}

</script>

<html>

<head>

<title></title>

</head>

<body>

<asp:Label id="Info" runat=server /><br>

<form runat="server">

用户名:<input type="text" name="username" size="20" ><br>

住址:<input type="text" name="address" size="20" ><br>

学校:<input type="text" name="school" size="20" ><br>

<input type="button" value="提交" runat="server"

OnServerClick="submit_Click" >

<p>1</p>

</form>

</body>

</html>

上面的程序执行情况看下面两个图:

图8-2 执行前

图8-3 执行后

因为我们是用的Access,所以首先就要申明一下啦

<% @ Import Namespace="System.Data" %>

<% @ Import Namespace="System.Data.ADO" %>

表明我们这里使用的是ADO.net.

我们提交入数据库的数据,来自于用户的输入,这里使用的是一个我们常见到的<form>

表单,初一看和普通的没有什么区别,但是我们仔细看看它的<form>中的属性是什么,ru

nat="server",呵呵,就是这么一个小小的标签,这个程序的性质就变啦。这表明他是一

个Web Form了。这里我用了HTML控件,目的就是为了让大家看看ASP.net和ASP到底有哪

些区别。

<form runat="server">

用户名:<input type="text" name="username" ><br>

住址:<input type="text" name="address" ><br>

学校:<input type="text" name="school" ><br>

<input type="button" value="提交" runat="server"

OnServerClick="submit_Click" >

</form>

在上面的代码,有一点需要注意就是,触发button控件提交事件处理的是OnServerClick

,这里大家很少有注意,因为大家使用WEB控件已成习惯,很容易就用了OnClick事件,呵

呵,这种错误很难发现,错了都不知道怎么错的:)

下面我们就该在Submit_Click中处理提交事件了,首先是收集信息,这里我们又看到了

久违的Request对象和Form方法。这个和ASP几乎是一模一样的,我也不想多说了。

string username1 = Request.Form["username"];

string address1 = Request.Form["address"];

string school1 = Request.Form["shool"];

接下来就是将收集来的数据写入数据库,关于数据库的打开和执行,我们上一节也讲过

了。这里也就不罗嗦了。注意一下SQL语句的正确性就行。

string strInsert="insert into aspcn(username,address,school)

values('"+username1+"','"+address1+"','"+school1+"')";

大家也要注意一下我的联结语句(因为很多人来问我,如何连结mdb数据库,其实和asp是

一样,最主要是大家有些人不愿意自已动手去实践,问人已经成为了习惯)

public string myConnstring="Driver={Microsoft Access Driver (*.mdb)};

DBQ=c:/test/test.mdb;";

这里联结Access最实用的语句(个人认为),其实还有好多种写法。比如:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:/test/test.mdb

Data Source=aspcn

呵呵,本来这一节是要讲DataSet的,没有想到其它的文字一下子写了这么多,只好留到

下一节去讲DataSet了

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有