20编程21编程爱好者22vb编程,23数控编程24编程中国25编程论坛26编程语言27游戏编程28编程软件下载29编程工具30socket编程31网络编程32编程器33c语言编程,34flash编程35编程软件36数控车床编程37windows编程38编程入门,39windows核心编程40cnc编程41vc 编程,42linux 编程43asp编程44vb编程实例45串口编程46手机编程47编程教程48plc编程,49单片机编程50vc 网络编程51excel编程,52unix网络编程53编程学习,54编程之道55数据库编程56单片机编程器57黑客编程58计算机编程59网页编程60嵌入式编程,61编程高手箴言62flash编程教程63vfp编程64windows网络编程,65编程基础66c语言编程实例67c语言编程软件68vf编程69shell编程,70vb数据库编程71matlab编程,72c语言编程工具73编程思想74php编程,75c编程76jsp编程77电脑编程技巧与维护,78三菱plc编程软件,79vb编程软件下载80pb编程81数控编程实例82asp编程工具,83c专家编程,84win32编程85数控铣床编程86asp.net高级编程,,87vc 数据库编程88vba编程89jsp高级编程90c语言编程宝典,91unix环境高级编程;92编程珠玑93delphi编程94delphi数据库编程95vb编程教程96单片机编程软件
1编程爱好者网站2vb编程网站,3电子商务网站编程4游戏编程网站5最大的编程网站6网站编程软件7可编程逻辑中文网站8网站 编程 语言9网站编程 数据库,10jsp网站编程11asp编程网站12网站编程电子书13好的编程网站,14c语言编程网站15编程门户网站16如何学习网站编程17百度网站的编程语言18vb编程乐园网站指南19wince 编程网站
1asp.net2asp教程,3asp源码4asp免费空间5asp论坛6asp代码7asp源代码8asp下载,9asp源码下载10asp木马11asp.net教程12asp学习13什么是asp14asp空间,15admin.asp dir16asp程序17asp教程下载18asp.net 2.019asp整站程序,20asp文件21十天学会asp22asp入门23asp源程序24asp实例25asp函数26asp服务器27asp.net论坛28asp id,29asp整站下载30asp网站31asp论坛下载32asp源代码下载,33asp整站34asp技术35asp access36asp.net源码37asp简介38asp免费空间申请39asp.net下载,40asp留言板41asp sql42asp 数据库43asp站长助手44asp连接数据库45asp留言本,46asp.net教程下载47asp分页48asp格式49asp论坛程序50asp.net源代码51asp软件52asp模板53asp session54asp语法,55如何打开asp文件56asp解密57asp编程58asp.net实例,59asp实例教程60asp程序下载61asp计数器62asp.net入门,63asp运行环境64asp基础教程65apache asp66asp入门教程,67asp编辑器68asp组件69asp连接access70conn.asp71asp书籍,72asp论文73asp工具74asp文件上传75asp探针76asp原代码下载77asp include78user wantpws.asp79asp split,80asp fso81asp网页制作82printpage.asp83什么是asp.net,84index.asp85asp.net datagrid86asp基础87asp replace88asp代码下载89asp新闻系统
1php论坛2免费php空间,3php下载4php源码5php mysql6php教程7php文件8php空间9apache php10什么是php11apache php mysql12php学习13php论坛下载14iis php15php cms16php入门17php blog18php手册,19php代码20php整站程序21php session22php安装23php源码下载24php配置25php源代码26php cookie27php网站28iis php mysql29php编程30php留言板31php探针32php注入33php.ini34php运行环境35index.php36php教程下载,37php论坛程序38php 文件上传39php服务器40php环境41php 函数;42php格式43php编辑器44php editor45如何打开php文件46php access47十天学会php48php模板49php xml;50php程序51php留言本52php文件怎么打开53php技术54ajax php55php简介56php注入工具57打开php文件58php语言59php mail;60php软件;61免费php mysql空间62php self63php 数组.64php分页,65php nuke66php阅读器67免费php空间申请68国外免费php空间69php程序下载70php 正则表达式71asp php,72php网站管理系统73php程序设计74php是什么文件75php 实例76php 开发工具77php 验证码78php官方网站79php学习资料
1jsp教程2jsp源码3jsp论坛4什么是jsp5jsp源代码6jsp空间7jsp学习8jsp文件9jsp mysql,10jsp入门11jsp连接数据库12jsp技术13eclipse jsp14jsp分页15jsp源代码下载16jsp access17jsp教程下载18jsp开发工具,19jsp代码20jsp简介21jsp环境配置22jsp连接mysql,23jsp实例24免费jsp空间25jsp配置26jsp session,27jsp运行环境28jsp下载29jsp网站30jsp include31jsp编程,32jsp介绍33jsp 数据库34jsp设计35jsp servlet36jsp标签37jsp应用开发详解38jsp 中文39jsp oracle40jsp论文41jsp 文件上传,42jsp高级编程43jsp源码下载44jsp 乱码45jsp开发46jsp分页显示47jsp sql48jsp连接sql49jsp 页面跳转50jsp request51eclipse开发jsp52iis jsp53jsp开发环境54jsp sqlserver,55jsp cookie56jsp服务器57jsp连接access58jsp毕业论文59jsp新闻发布系统60jsp留言板61jsp 电子书62jsp forward63jsp中文网64tomcat jsp65jsp语法66jsp留言本67asp jsp,68jsp import69jsp源程序70jsp基础71jsp毕业设计,72jsp格式73jsp 中文乱码,74jsp开发实例75jsp书籍76jsp论坛下载77jsp 上传,78jsp计数器79jsp 注释80jsp电子教程81jsp 保存用户名密码,82jsp的优点83jsp软件下载84jsp语言85jsp代码下载86jsp blog87jsp 打印88jsp手册

思顿科技-专业网站制作指南、网页设计制作教程、免费网页制作素材下载、免费学习网页制作指南,专业网站建设服务、网站制做指南、免费网页制作指南、网页制作服务、免费空间域名服务、
首页
网页教程
网页素材
收录查询
工具下载
网站欣赏
网站论坛
免费博客
建站服务

ASP.NET数据库应用指南
你当前的位置:网站制作指南 --> 技术文档全集 (www.STasp.com)
对于一个熟练的ASP开发者来说,ASP的数据库应用不但简单,而且功能还很强大。很多WEB开发者就是因为这一点而选择ASP的,至今为止,他们一直认为ASP数据库功能还不错,完全可以满足开发要求。但是,对于一个刚刚学习ASP或者对HTML不是很熟悉的用户来说,ASP的数据库应用实在是太麻烦了:写程序时ASP代码穿插于HTML代码之间,修改和检测极不方便;写程序一点没有编写传统程序的感觉,感觉就像是写HTML一样;数据分页不方便,而且不明白为什么要那么繁琐,简直每一页直接数数据差不多。这些麻烦,每一个ASP开发者都曾经经历,那么,现在,ASP.NET的学习者,就再也不会面对这些了,他们可以很快捷的开发数据库应用,而且程序性能比以前高的多。现在,我们就具体来看看ASP.NET的数据库应用。 
 
一:名字空间NAMESPACE 
要使用ASP.NET的数据库功能,不可能离开名字空间NAMESPACE的使用。什么是名字空间,说理论可以说半天,我们没必要了解,简单一点,名字控件就像DELPHI中的控件,你必须将它们放入你的FORM才能使用他们,同样,如果你要使用ASP.NET的数据库功能,你就必须先引用相应的名字空间。ASP.NET中关于数据库的名字空间有这些: 



上面说到了ADO+,它是ADO的下一代,就像ASP.NET是ASP的下一代,相对于ADO,ADO+有以下特点: 
一) 支持XML; 
二) 更好的性能; 
三) 方便的编程接口; 
 
名字空间的具体使用如下: 
<%@ IMPORT NAMESPACE=”名字空间”%> 
 
举例: 
<%@ IMPORT NAMESPACE=”SYSTEM.DATA”%> 
 
应该注意一点,以上代码必须在页面顶端。 
 
二:基本概念 
在使用ASP.NET以前,还必须了解一些基本概念: 
ADOCONNECTION:相当于ASP中的数据库CONNECTION; 
ADOCOMMAND:相当于ASP中的数据库COMMAND; 
DATAVIEW:相当于ASP的ADO记录集RECORDSET; 
DATASET:多个数据表的集合; 
 
以上概念实在是比较抽象,如果现在不理解,不要紧,现照着使用,以后慢慢就会理解。 
 
三:数据库基本使用样板 
看了一大堆概念,现在先来看一个实例(为了方便,直接使用SQL SERVER自带的NORTHWIND数据库),本文章以后举例,均以此样板为基础,请大家一定掌握: 
 
<%@ IMPORT NAMESPACE="SYSTEM.DATA"%> 
<%@ IMPORT NAMESPACE="SYSTEM.DATA.SQL"%> 
 
<SCRIPT LANGUAGE="VB" RUNAT="SERVER"> 
FUNCTION CREATEDATASOURCE() 
DIM CONN AS SQLCONNECTION 
DIM CONNSTR AS STRING 
DIM STRSQL AS STRING 
DIM SQLCMD AS SQLDATASETCOMMAND 
DIM DS AS NEW DATASET 
'连接数据库 
CONNSTR= 
"SERVER=NHGA-D36KQ26TWB;DATABASE=NORTHWIND;PWD=;UID=SA" 
CONN= NEW SQLCONNECTION(CONNSTR) 
'SQL语句 
STRSQL="SELECT * FROM PRODUCTS " 
'建立DATASET 
SQLCMD=NEW SQLDATASETCOMMAND(STRSQL,CONN) 
'将表PRODUCTS加入DATASET 
SQLCMD.FILLDATASET(DS,"PRODUCTS") 
 
RETURN DS.TABLES("PRODUCTS").DEFAULTVIEW 
END FUNCTION 
 
'绑定数据函数 
SUB BINDGRID() 
DATAGRID1.DATASOURCE=CREATEDATASOURCE() 
DATAGRID1.DATABIND() 
END SUB 
 
'页面登录  
SUB PAGE_LOAD(SOURCE AS OBJECT,E AS EVENTARGS) 
CREATEDATASOURCE() 
BINDGRID() 
END SUB 
</SCRIPT> 
 
<HTML> 
 
<HEAD> 
<META HTTP-EQUIV="CONTENT-LANGUAGE" CONTENT="ZH-CN"> 
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML; CHARSET=GB2312"> 
<META NAME="GENERATOR" CONTENT="MICROSOFT FRONTPAGE 4.0"> 
<META NAME="PROGID" CONTENT="FRONTPAGE.EDITOR.DOCUMENT"> 
<TITLE>ASP.NET数据库使用</TITLE> 
</HEAD> 
 
<BODY> 
<FORM RUNAT="SERVER"> 
<ASP:DATAGRID ID="DATAGRID1" RUNAT="SERVER" /> 
</FORM> 
</BODY> 
 
</HTML> 
 
执行以上程序,效果如下: 



(程序执行效果)
 
 
以上是一个最简单的ASP.NET数据库应用,唯一功能就是列出NORTHWIND数据库PRODUCTS表的所有记录。可以和ASP比较一下,发现这个程序是如此的简单。为了更好的了解数据库应用的基本框架,我们来看看这个数据库应用具体是怎样实现的。 
 
页面登录时,调用CREATEDATASOURCE和BINDGRID函数,CREATEDATASOURCE函数连接数据库并且建立DATAVIEW,BINDGRID函数将数据绑定到DATAGRID。有关这两个函数的具体语句,代码中均有说明。 
 
四:基本数据库应用 
有了以上模板,ASP.NET数据库应用的基本框架已经有了,现在,我们需要在这个框架上作一些修改,是其更加符合我们的实际使用要求。 
 
一)界面设置 
如果我们呈现给访问者的数据全部使用以上模板的界面,也未尝不可。但是 
谁不希望自己的页面美观一点呢?还是以上代码,只是修改DATAGRID部分,数据库部分不变。将程序中: 
<ASP:DATAGRID ID="DATAGRID1" RUNAT="SERVER" /> 
修改为: 
<ASP:DATAGRID ID="DATAGRID1" RUNAT="SERVER" 
BORDERCOLOR="BLACK" 
BORDERWIDTH="1" 
CELLPADDING="3" 
 
BACKIMAGEURL="" 
BACKCOLOR="#FFCCCC" 
FORECOLOR="BLACK" 
 
HEADERSTYLE-BACKCOLOR="#CCCCFF" 
HEADERSTYLE-FORECOLOR="BLUE" 
 
ALTERNATINGITEMSTYLE-BACKCOLOR="#F3F3F3" 

</ASP:DATAGRID> 
你将得到以下效果: 



(程序执行效果)
 
在这个界面里面,我们设置了字体,每行背景,DATAGRID背景等,我们现在一一分析: 
BORDERCOLOR="BLACK" 
BORDERWIDTH="1" 
CELLPADDING="3" 
以上语句设置DATAGRID的边框为黑色;边框粗细为1;单元格跨距为3; 
BACKIMAGEURL="APICTUE.GIF" 
BACKCOLOR="#FFCCCC" 
FORECOLOR="BLACK" 
以上语句设置DATAGRID的背景图象为APICTURE.GIF;背景颜色为#FFFFCC;字体颜色为黑色; 
HEADERSTYLE-BACKCOLOR="#CCCCFF" 
HEADERSTYLE-FORECOLOR="BLUE" 
以上语句设置DATAGRID的HEADER属性,背景颜色为#CCCCFF;字体颜色为:蓝色; 
ALTERNATINGITEMSTYLE-BACKCOLOR="#F3F3F3" 
以上语句设置DATAGRID每一行交替背景颜色为F3F3F3;这一语句在ASP里面实现很繁琐,在这里,一句就解决。 
 
二)数据分页 
ASP里面的数据分页实在繁琐,不得不化很多精力去写代码。一些程序员就是因为这一点,如果数据不是太多干脆不分页,勉强应付。现在我们再也不要为数据分页烦恼了,将一下代码加入DATAGRID设置: 
ALLOWPAGING="TRUE" 
PAGESIZE="5" 
PAGERSTYLE-HORIZONTALALIGN="RIGHT" 
PAGERSTYLE-NEXTPAGETEXT="下一页 >>" 
PAGERSTYLE-PREVPAGETEXT="<< 上一页" 
页面效果如下: 



(程序执行效果)
 
这就是一个标准的数据分页,是不是比ASP简单的多?我们来仔细看一下代码是怎样的: 
ALLOWPAGING="TRUE" 
以上代码允许数据进行分页,默认是FALSE。所以,如果你要数据分页,一定要加上这一句; 
PAGESIZE="5" 
PAGESIZE和ASP中的一样,表示每页有多少记录; 
PAGERSTYLE-HORIZONTALALIGN="RIGHT" 
以上语句表示分页符在页面的位置的右边。 
PAGERSTYLE-NEXTPAGETEXT="下一页 >>" 
PAGERSTYLE-PREVPAGETEXT="<< 上一页" 
以上语句表示用“下一页”“上一页”作为分页符号,如果不希望这样,想直接用数字表示,去掉这两句就可以了。 
注意: 
与分页有关的还有PAGECOUNT属性,可以得到分页的总数; 
 
三)数据排序 
数据排序不是在SQL语句里面就可以设定吗,为什么还要专门来一个数据排序?SQL语句的数据排序只能服务器端设定,如果用户希望按照自己的喜好排序怎么办?ASP里面是没有办法解决的,现在,我们看看ASP.NET怎样解决这个问题。 
在DATAGRID设置里面加入一下语句: 
ALLOWSORTING="TRUE" 
ONSORTCOMMAND="SORT_GRID" 
第一句表示DATAGRID采用要求排序;第二局表示点击排序以后的事件;我们来看看这个事件: 
SUB SORT_GRID(SENDER AS OBJECT,E AS DATAGRIDSORTCOMMANDEVENTARGS) 
SORTFIELD=E.SORTFIELD  
DATAGRID1.DATASOURCE=CREATEDATASOURCE() 
DATAGRID1.DATABIND() 
END SUB 
点击排序以后,首先,设置排序字段为点击的字段,如何重新显示数据。效果如下: 



(程序执行效果)
 
如上图,每一个字段名均是一个LINKBUTTON(连接),点击这个字段名,就可以按这个字段排序。需要注意的是,排序不是对当前页排序,而是对整个DATAGRID排序。 
 
四) 数据编辑 
数据库操作出了数据浏览,最大部分其实就是对数据的处理(增加,修改,删除)。数据处理,ASP.NET和ASP没有太多的区别,我们看一个增加数据的例子就可以了解ASP.NET的数据编辑的实现了。 
SUB INSERTREC()  
DIM CONN AS SQLCONNECTION 
DIM CONNSTR AS STRING 
DIM SQLINSERTCMD AS SQLCOMMAND 
DIM SQLINSERT AS STRING 
 
CONNSTR="SERVER=NHGA-D36KQ26TWB;DATABASE=MYBASE;PWD=;UID=SA" 
CONN= NEW SQLCONNECTION(CONNSTR) 
 
SQLINSERT="INSERT INTO MYTABLE(TITLE,NAME,CONTENT) VALUES(@TITLE,@NAME,@CONTENT)" 
SQLINSERTCMD=NEW SQLCOMMAND(SQLINSERT,CONN) 
 
SQLINSERTCMD.PARAMETERS.ADD(NEW SQLPARAMETER("@TITLE",SQLDATATYPE.VARCHAR,20)) 
SQLINSERTCMD.PARAMETERS.ADD(NEW SQLPARAMETER("@NAME",SQLDATATYPE.VARCHAR,20)) 
SQLINSERTCMD.PARAMETERS.ADD(NEW SQLPARAMETER("@CONTENT",SQLDATATYPE.VARCHAR,20)) 
 
SQLINSERTCMD.PARAMETERS.ITEM("@TITLE").VALUE="TEST3" 
SQLINSERTCMD.PARAMETERS.ITEM("@NAME").VALUE="TEST3" 
SQLINSERTCMD.PARAMETERS.ITEM("@CONTENT").VALUE="TEST3" 
 
CONN.OPEN() 
SQLINSERTCMD.EXECUTE() 
 
END SUB 
 
以上代码中,首先创建一个数据库连接,然后建立了一个插入语句,此插入语句使用了以@开头的参数,这一点可能与ASP稍有差别。使用参数之前,必须先创建参数,并要说明参数的数据类型。如何打开连接,执行插入语句就可以了。 
 
五:总结 
以上我们设计到了ASP.NET数据库操作中常用的部分,基本可以实现我们一般编程要求。但是,如果要全面了解ASP.NET的数据库功能,以上显然是不够的,这需要我们更加不断地学习其他ASP.NET的知识,融会贯通。 
 
| 关于我们 | 联系我们 | 业务合作 | 友情链接 | 网站地图 |
版权所有©思顿科技-专业网站制作指南2004-2006 在线技术支持- QQ:63127313