不帅 发表于 2015-1-16 23:09:47

ASP网站制作之在ASP中毗连数据库(毗连字符串)

Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来;毗连数据库|字符串1、存取数据库的道理

在ASP中,用来存取数据库的工具统称ADO工具(ActiveDataObjects),次要含有三种工具:Connection、Recordset和Command,个中Connection卖力翻开或毗连数据库,Recordset卖力存取数据表,Command卖力对数据库实行举动查询(ActionQuery)命令和实行SQLServer的StoredProcedure。只依托这三个工具仍是没法存取数据库的,还必需具无数据库存取的驱动程序:OLEDB驱动程序和ODBC驱动程序。关于任何一种数据库都必需有绝对应的OLEDB驱动程序和ODBC驱动程序,ADO工具才干对数据库举行存取。

ADO工具必需与各类驱动程序相分离才干存取各类范例数据库,分歧的数据库必要分歧的驱动程序。在Windows9x/NT的“入手下手”→“设置”→“把持面板”→“ODBCDataSource(32Bit)”中的“驱动程序”标签页,能够查证呆板上事实装了哪些驱动程序。

2、毗连数据库和翻开数据表

分歧数据库的毗连办法有所分歧(即创建Connection实例的办法纷歧样),但创建Connection实例后,使用Recordset工具举行存取数据的办法却迥然不同。上面关于分歧的数据范例,编写了绝对应的毗连函数,在程序中间接援用便可。

程序用VBScript剧本言语编写。

1.创建MdbRecordset工具。MDB数据库是一个完全的数据库,外部大概含有多少个数据表,在此函数中,Connection的感化是毗连数据库,Recordset的感化是翻开数据表。

FunctionCreateMdbRecordset(数据库文件名,数据表名或Select语句)
 Dimconn,Provider,DBPath
 ’创建Connection工具
 Setconn=Server.CreateObject(“ADODB.Connection”)
 Provider=“Provider=Microsoft.Jet.OLEDB.4.0;”
 DBPath=“DataSource=”&Server.MapPath(“数据库文件名”)
 ’翻开数据库
 conn.OpenProvider&DBPath
 SetCreateMdbRecordset=Server.CreateObject(“ADODB.Recordset”)
 ’翻开数据表
 CreateMdbRecordset.Open“数据表名”,conn,2,2
EndFunction

2.创建带暗码的MDB数据库的Recordset工具。它的创建体例与创建不带暗码的MDB数据库的Recordset工具相似,只是多了一个暗码参数,即在与数据库毗连时,必需给出暗码信息。

FunctionCreateSecuredMdbRecordset(数据库文件名,数据表名或Select语句,password)
 Dimconn,Provider,DBPath
 ’创建Connection工具
 Setconn=Server.CreateObject(“ADODB.Connection”)
 Provider=“Provider=Microsof.Jet.OLEDB.4.0;”
 DBPath=“DataSource=”&Server.MapPath(“数据库文件名”)
 ’毗连数据库,注重要带有暗码参数
 conn.OpenProvider&DBPath&“JetOLEDB:DatabasePassword=”&assword
 SetCreateSecuredMdbRecordset=Server.
 CreateObject(“ADODB.Recordset”)
 ’翻开数据表
 CreateSecuredMdbRecordset.Open“数据表名”,conn,2,2
EndFunction

3.DBF文件不是一个尺度的数据库文件,只相称于尺度数据库文件中的一个数据表,以是为了利用DBF文件,能够把一切的DBF文件放在一个目次下,如许把目次名当作尺度数据库,每个DBF文件相称于尺度数据库中的数据表。上面函数中的Directory是DBF地点的目次名。

FunctionCreateDbfRecordset(目次名,DBF文件名或Select语句)
 Dimconn,Driver,SourceType,DBPath
 ’创建Connection工具
 Setconn=Server.CreateObject(“ADODB.Connection”)
 Driver=“Driver={MicrosoftVisualFoxProDriver};”SourceType=“SourceType=DBF;”
 DBPath=“SourceDB=”&Server.MapPath(“目次名”)
 ’挪用Open办法翻开数据库
 conn.OpenDriver&SourceType&DBPath
 SetCreateDbfRecordset=Server.CreateObject(“ADODB.Recordset”)
 ’翻开DBF文件
 CreateDbfRecordset.Open“DBF文件名或Select语句”,conn,2,2
EndFunction

4.由FoxPro天生的DBC数据库与MDB数据库类似,都是一个数据库包括几个数据表的情势,以是对DBC数据库的存取办法与MDB数据库类似。

FunctionCreateDbcRecordset(DBC数据库文件名,数据表名或Select语句)
 Dimconn,Driver,SourceType,DBPath
 ’创建Connection工具
 Setconn=Server.CreateObject(“ADODB.Connection”)
 Driver=“Driver={MicrosoftVisualFoxProDriver};”
 SourceType=“SourceType=DBC;”
 DBPath=“SourceDB=”&Server.MapPath(“DBC数据库文件名”)
 ’毗连数据库
 conn.OpenDriver&SourceType&DBPath
 SetCreateDbcRecordset=Server.CreateObject(“ADODB.Recordset”)
 ’翻开数据表
 CreateDbcRecordset.Open“数据表名或Select语句”,conn,2,2
EndFunction

5.将Excel天生的XLS文件(book)当作一个数据库,个中的每个事情表(sheet)当作一个数据库表。

FunctionCreateExcelRecordset(XLS文件名,Sheet名)
 Dimconn.Driver,DBPath
 ’创建Connection工具
 Setconn=Server.CreateObject(“ADODB.Connection”)
 Driver=“Driver={MicrosoftExcelDriver(*.xls)};”
 DBPath=“DBQ=”&Server.MapPath(“XLS文件名”)
 ’挪用Open办法翻开数据库
 conn.OpenDriver&DBPath
 SetCreateExcelRecordset=Server.CreateObject(“ADODB.Recordset”)
 ’翻开Sheet
 CreateExcelRecordset.Open“Select*From[”&sheet&“$]”,conn,2,2
EndFunction

6.SQLServer属于Server级的数据库,利用时请求对照严厉,必需要输出用户名及暗码才干利用。

FunctionCreateSQLServerRecordset(盘算机称号,用户ID,用户暗码,数据库称号数据表或检察表或Select指令)
 DimParams,conn
 SetCreatSQLServerConnection=Nothing
 Setconn=Server.CreateObject(“ADODB.Connection”)
 Params=“Provider=SQLOLEDB.1”
 Params=Params&“;DataSource=”&Computer
 Params=Params&“;UserID=”&UserID
 Params=Params&“;Password=”&Password
 Params=Params&“.InitialCatalog=”&数据库称号
 ConnopenParas
 SetCreateSQLServerRecordset=Server.CreateObject(“ADODB.Recordset")
 CreateSQLServerRecordset.Opensource,conn,2,2
EndFunction

</p>ASP在国内异常流行,因为国内大多使用的是盗版的Windows和盗版的SQLServer,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP+MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护,因此对于不重视知识产权的国家来说也是一种不错的选择。

admin 发表于 2015-1-20 07:44:48

接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。

精灵巫婆 发表于 2015-1-21 20:53:39

我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。

老尸 发表于 2015-1-26 07:46:25

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。

活着的死人 发表于 2015-1-26 21:09:50

最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。

再现理想 发表于 2015-2-4 20:32:37

如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。

若天明 发表于 2015-2-10 07:13:52

虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。

兰色精灵 发表于 2015-3-1 02:42:10

我想问如何掌握学习节奏(先学什么再学什么)最好详细点?

冷月葬花魂 发表于 2015-3-10 12:25:54

尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。

再见西城 发表于 2015-3-17 06:25:40

多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。

灵魂腐蚀 发表于 2015-3-23 23:42:53

以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
页: [1]
查看完整版本: ASP网站制作之在ASP中毗连数据库(毗连字符串)