ASP网页设计ASP毗连数据库的11种办法及相干语法
由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况;毗连数据库|语法 编纂注:学会了这些器材,您将基础能够自力完成ASP对数据库的一切操纵。ASP毗连数据库的11种办法――本文总结了利用ASP链接各类数据库的办法:
1.Access数据库的DSN-less毗连办法:
setadocon=Server.Createobject("adodb.connection")
adoconn.Open"Driver={MicrosoftAccessDriver(*.mdb)};DBQ="&_
Server.MapPath("数据库地点路径")
2.AccessOLEDB毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Provider=Microsoft.Jet.OLEDB.4.0;"&_
"DataSource="&Server.MapPath("数据库地点路径")
3.SQLserver毗连办法:
setadocon=server.createobject("adodb.recordset")
adocon.Open"Driver={SQLServer};Server=(Local);UID=***;PWD=***;"&_
"database=数据库名;"
4.SQLserverOLEDB毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"provider=SQLOLEDB.1;DataSource=RITANT4;"&_
"userID=***;Password=***;"&_
"initalCatalog=数据库名"
5.Oracle毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsoftodbcfororacle};server=oraclesever.world;uid=admin;pwd=pass;"
6.OracleOLEDB毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Provider=OraOLEDB.Oracle;datasource=dbname;userid=admin;password=pass;"
7.dBase毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsoftdbasedriver(*.dbf)};driverid=277;dbq=------------;"
8.mySQL毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Driver={mysql};database=yourdatabase;
uid=username;pwd=yourpassword;option=16386;"
9.VisualFoxpro毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsoftVisualFoxprodriver};sourcetype=DBC;sourceDB=*.dbc;Exclusive=No;"
10.MStext毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Driver={microsofttextdriver(*.txt;*.csv)};dbq=-----;"&_
"extensions=asc,csv,tab,txt;PersistSecurityInfo=false;"
11.MStextOLEDB毗连办法:
setadocon=Server.Createobject("adodb.connection")
adocon.open"Provider=microsof.jet.oledb.4.0;datasource=your_path;"&_
"ExtendedPropertiestext;FMT=Delimited"
<二>经常使用的四种SQL命令:
1.查询数据纪录(Select)
语法:Select字段串行FromtableWhere字段=内容
例子:想从book表中找出作者为"cancer"的一切纪录,SQL语句便以下:
select*frombookwhereauthor=’cancer’
"*"是掏出book表一切的字段,如查询的字段值为数字,则厥后的"内容"便不必加上单引号,如是日期,则在Access顶用(#)包含,而在SQLserver中则用(’)包含,
如:
select*frombookwhereid=1
select*frombookwherepub_date=#2002-1-7#(Access)
select*frombookwherepub_date=’2002-1-7’(SQLServer)
提醒:
日期函数to_date不是尺度sql文,不是一切的数据库合用,以是人人在利用的时分要参考数据库详细语法
别的假如是查询传进的变量,则以下:
strau=request.form("author")
strsql="select*frombookwhereauthor=’"&strau&"’"
假如查询的是数字,则:
intID=request.form("id")
strsql="select*frombookwhereid="&intID
在良多数据库中,如:oracle,下面的语句是能够写成:
strsql="select*frombookwhereid="&intID&""
可是字符型必定不克不及依照数字格局写,必要注重。
2.增加纪录(Insert)
语法:
Insertintotable(field1,field2,....)Values(value1,value2,....)
例子:增加一作者是"cancer"的纪录进book表:
insertintobook(bookno,author,bookname)values(’CF001’,’cancer’,’Cancer无组件上传程序’)
一样,假如用到变量就以下:
strno=request.form("bookno")
strau=request.form("author")
strname=request.form("bookname")
strsql="insertintobook(bookno,author,bookname)values(’"&strno&"’,’"&strau&"’,’"&strname&"’)"
3.用Recordset工具的Addnew拔出数据的办法:
语法:
rs.addnew
rs("field1").value=value1
rs("field2").value=value2
...
rs.update
4.修正数据纪录(Update)
语法:
updatetablesetfield1=value1,field2=value2,...wherefieldx=valuex
例子:
updatebooksetauthor=’babycrazy’wherebookno=’CF001’
假如用到变量就以下:
strno=request.form("bookno")
strau=request.form("author")
strsql="updatebooksetauthor=’"&strau&"’wherebookno=’"&strno"’"
5.Recordset工具的Update办法:
语法:
rs("field1").value=value1
rs("field2").value=value2
...
rs.update
注重:利用语法3和语法5的时分,必定要注重字段的范例(特别是日期型)分歧,不然堕落的概率十分的高。
例子:
strno=request.form("bookno")
strau=request.form("author")
setadocon=server.createobject("adodb.connection")
adocon.open"Driver={MicrosoftAccessDriver(*.mdb)};DBQ="&_
Server.Mappath=("/cancer/cancer.mdb")
strsql="select*frombookwherebookno=’"&strno&"’"
setrs=server.createobject("adodb.recordset")
rs.openstrsql,adconn,1,3
ifnotrs.eofthen’假如有此纪录的话
rs("author").value=strau
rs.update
endif
rs.close
setrs=nothing
adocon.close
setadocon=nothing
6.删除一笔记录(Delete)
语法:
Deletetablewherefield=value
例子:删除book表中作者是cancer的纪录
deletebookwhereauthor=’cancer’
(注重:假如book表中author字段的值为cancer的纪录有多条,将会删除一切author为cancer的纪录)
好了,学会了用这些操纵,人人在用asp操纵数据库的时分,该是没有甚么成绩了。
结论:和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。 完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。 封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
页:
[1]