编程论坛's Archiver

zhoukang_xa 发表于 2006-9-14 16:19

关于用ADO连接Access数据库

哪里能找到用ADO对象访问数据库的详细介绍,现在看到的东西都不实用!<BR>论坛里的达人们能不能整理个比较实用的教程啊,谢谢了!

勇者RX 发表于 2006-9-14 16:25

如果你真的想学的话,因该从最基本开始,买一本教材是必要的.每一个高手都是从看书开始的,希望你明白!

zhoukang_xa 发表于 2006-9-14 16:26

<P>首先一个问题,用ADO连接数据库以后,怎么把某一条记录的某个属性赋值给一个变量,又怎么修改某一条记录的某个属性值!<BR>第二个问题,怎么删除某一条记录?</P>

zhoukang_xa 发表于 2006-9-14 16:30

嘿嘿,手头有两本教材,一本是人民邮电的,另一本是清华的,人民邮电的根本没讲什么ADO,直接给了一堆例子,所以我现在会一些ADO的用法,但是不系统!<BR>清华的着重讲了一下DAO,ADO一笔代过,也是给了些例子!所以我对这些东西一点概念都没有!

勇者RX 发表于 2006-9-14 16:40

<P>ADO连接ACCESS数据库是用connection内置对象实现的.具体是:<BR>&lt;%<BR>set cn=server.createobject("adodb.connection")<BR>cn.open "driver={microsoft access driver(*.mdb)}; dbq="&amp; server.mappath("你的数据库名.mdb")<BR>cn.execute("insert ,update,delete,select")(这些不用我多说,你都知道是什么意思,)   (你想对数据库作出什么修改就在这里输入你要的代码)<BR>cn.close(记得把连接关闭)<BR>set cn=nothing <BR>%&gt;</P>

勇者RX 发表于 2006-9-14 16:43

<P>如果你想修改记录,就应该用command对象,查询就用recordset对象!</P>

zhoukang_xa 发表于 2006-9-15 09:04

<P>谢谢勇者!</P>

dayaowang 发表于 2006-9-20 09:53

<P>-------------------------------------------------------------------------------<BR>在网络编程过程中,ADO(Activex Data Object)编程往往是不可少的工作,特别是开发电子商务网站。既然讲到ADO数据对象,那么就顺便简单地介绍一下ADO数据对象及其功能。ADO数据对象共有七种独立的对象,他们分别是连接对象(Connection)、记录集对象(RecordSet)、域对象(Field)、命令对象(Command)、参数对象(Parameter)、属性对象(Property)和错误对象(Error)。功能请参见附录1。</P>
<P>ADO数据对象用来连接数据库的方式有两种,分别是ODBC和OLE DB方式,下面就分别介绍用这两种方式连接数据库的例子。</P>
<P>第一种:ODBC DSN-Less Connections</P>
<P>ODBC Driver for Access </P>
<P>ODBC Driver for dBASE </P>
<P>ODBC Driver for Excel </P>
<P>ODBC Driver for MySQL </P>
<P>ODBC Driver for Oracle </P>
<P>ODBC Driver for Paradox </P>
<P>ODBC Driver for SQL Server </P>
<P>ODBC Driver for Sybase </P>
<P>ODBC Driver for Sybase SQL Anywhere </P>
<P>ODBC Driver for Text </P>
<P>ODBC Driver for Teradata </P>
<P>ODBC Driver for Visual FoxPro</P>
<P>第二种:OLE DB Data Provider Connections</P>
<P>OLE DB Provider for Active Directory Service </P>
<P>OLE DB Provider for DB2 </P>
<P>OLD DB Provider for Internet Publishing </P>
<P>OLE DB Provider for Index Server </P>
<P>OLE DB Provider for Microsoft Jet </P>
<P>OLE DB Provider for ODBC Databases </P>
<P>OLE DB Provider for Oracle (From Microsoft) </P>
<P>OLE DB Provider for Oracle (From Oracle) </P>
<P>OLE DB Provider for Simple Provider </P>
<P>OLE DB Provider for SQL Server</P>
<P>一、下面我就先讲利用ODBC DSN来访问数据库,要完成这项工作,必须先通过“控制面板”—“管理工具”—“ODBC数据源”来建立一个数据源名,例如叫做TestData_Resoure。</P>
<P>1)   通过系统数据源(System DSN)的连接</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="DSN=TestData_Resoure;" &amp; _ </P>
<P>          "Uid=AdminAccount;" &amp; _ </P>
<P>          "Pwd=PassWord;</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>2)   通过文件数据源(File DSN)的连接</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="FILEDSN=c:\somepath\mydb.dsn;" &amp; _ </P>
<P>          "Uid=AdminAccount;" &amp; _</P>
<P>          "Pwd=PassWord;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>3)   通过连接池(DSN-Less)的连接(ODBC Driver for AS/400)</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>strConn= "Driver={Client Access ODBC Driver (32-bit)};" &amp; _</P>
<P>          "System=myAS400;" &amp; _</P>
<P>          "Uid=myUsername;" &amp; _</P>
<P>          "Pwd=myPassword;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>二、利用数据库驱动程序直接访问数据库的连接字符串。</P>
<P>1)  ODBC Driver for Access</P>
<P>●      标准的也是比较常用的连接方法</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn= "Driver={Microsoft Access Driver (*.mdb)};" &amp; _ </P>
<P>          "Dbq=”&amp;Server.MapPath(“Testdb.mdb”); &amp; _</P>
<P>          "Uid=AdminAccount;" &amp; _</P>
<P>          "Pwd=Password;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>●      假如是一个工作组的系统数据库,那么连接字符串如下</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn= "Driver={Microsoft Access Driver (*.mdb)};" &amp; _ </P>
<P>          "Dbq=c:\datapath\Testdb.mdb;" &amp; _</P>
<P>          "SystemDB=c:\datapath\Testdb.mdw;", _</P>
<P>          "admin", ""</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>●      假如数据库(MDB)是网络上共享的,那么连接字符串如下</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={Microsoft Access Driver (*.mdb)};" &amp; _</P>
<P>          "Dbq=\\myServer\myShare\myPath\Testdb.mdb;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>2) ODBC Driver for dBASE</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={Microsoft dBASE Driver (*.dbf)};" &amp; _</P>
<P>    "DriverID=277;" &amp; _</P>
<P>  "Dbq=c:\FilePath;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>说明:这里要注意的一点就是,在SQL查询语句中要特别指定数据库文件名,例如:</P>
<P>oRs.Open "Select * From Testdb.dbf", oConn, , ,adCmdText</P>
<P>3) ODBC Driver for Excel</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={Microsoft Excel Driver (*.xls)};" &amp; _</P>
<P>          "DriverId=790;" &amp; _</P>
<P>          "Dbq=c:\filepath\myExecl.xls;" </P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>4) ODBC Driver for MySQL (通过 MyODBC驱动程序)</P>
<P>●          连接到本地数据库(local database)</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={mySQL};" &amp; _ </P>
<P>  "Server=ServerName;" &amp; _</P>
<P>  "Option=16834;" &amp; _</P>
<P>       "Database=mydb;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>●          连接远程数据库(remote databas)</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={mySQL};Server=db1.database.com;Port=3306;" &amp; _</P>
<P>"Option=131072;Stmt=;Database=mydb;Uid=myUsername;Pwd=myPassword;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>5) ODBC Driver for Oracle</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={Microsoft ODBC for Oracle};" &amp; _</P>
<P>          "Server=OracleServer.world;" &amp; _</P>
<P>          "Uid=myUsername;" &amp; _</P>
<P>          "Pwd=myPassword;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>6) ODBC Driver for Paradox</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={Microsoft Paradox Driver (*.db)};" &amp; _</P>
<P>          "DriverID=538;" &amp; _</P>
<P>          "Fil=Paradox 5.X;" &amp; _</P>
<P>          "DefaultDir=c:\dbpath\;" &amp; _</P>
<P>          "Dbq=c:\dbpath\;" &amp; _</P>
<P>          "CollatingSequence=ASCII;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>7) ODBC Driver for SQL Server</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn="Driver={SQL Server};" &amp; _ </P>
<P>                 "Server=MyServerName;" &amp; _</P>
<P>              "Database=myDatabaseName;" &amp; _</P>
<P>              "Uid=myUsername;" &amp; _</P>
<P>              "Pwd=myPassword;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>8) ODBC Driver for Sybase (通过Sybase System 11 ODBC Driver驱动程序)</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn= "Driver={SYBASE SYSTEM 11};" &amp; _</P>
<P>          "Srvr=myServerName;" &amp; _</P>
<P>           "Uid=myUsername;" &amp; _</P>
<P>           "Pwd=myPassword;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>9) ODBC Driver for Sybase SQL Anywhere</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn= "ODBC; Driver=Sybase SQL Anywhere 5.0;" &amp; _</P>
<P>          "DefaultDir=c:\dbpath\;" &amp; _</P>
<P>          "Dbf=c:\sqlany50\mydb.db;" &amp; _</P>
<P>           "Uid=myUsername;" &amp; _</P>
<P>           "Pwd=myPassword;"</P>
<P>          "Dsn="""";"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>10) ODBC Driver for Teradata</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn= "Provider=Teradata;" &amp; _</P>
<P>          "DBCName=MyDbcName;" &amp; _ </P>
<P>          "Database=MyDatabaseName;" &amp; _ </P>
<P>          "Uid=myUsername;" &amp; _</P>
<P>          "Pwd=myPassword;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>11) ODBC Driver for Text</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn= "Driver={Microsoft Text Driver (*.txt; *.csv)};" &amp; _</P>
<P>          "Dbq=c:\somepath\;" &amp; _</P>
<P>          "Extensions=asc,csv,tab,txt;" &amp; _</P>
<P>          "Persist Security Info=False"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>12) ODBC Driver for Visual FoxPro</P>
<P>●使用数据库容器(database container)连接方式</P>
<P>&lt;%</P>
<P>Dim oConn,strConn</P>
<P>Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>StrConn= "Driver={Microsoft Visual FoxPro Driver};" &amp; _</P>
<P>          "SourceType=DBC;" &amp; _</P>
<P>          "SourceDB=c:\somepath\mySourceDb.dbc;" &amp; _</P>
<P>          "Exclusive=No;"</P>
<P>oConn.Open strConn</P>
<P>%&gt;</P>
<P>●          不使用数据库容器(database container)连接方式(即Free Table Directory方式)</P>
<P>      &lt;%</P>
<P>    &lt;%</P>
<P>    Dim oConn,strConn</P>
<P>    Set oConn=Server.CreateObject(“ADODB.Connection”)</P>
<P>    StrConn= "Driver={Microsoft Visual FoxPro Driver};" &amp; _</P>
<P>          "SourceType=DBF;" &amp; _</P>
<P>          "SourceDB=c:\somepath\mySourceDbFolder;" &amp; _</P>
<P>          "Exclusive=No;"</P>
<P>                            oConn.Open strConn </P>
<P>                            %&gt;<BR></P>

zhoukang_xa 发表于 2006-9-21 14:47

<P>谢谢大家,我还没到这么深的地方,不过问题已经解决了!我已经实现了上面说的功能!<BR>感谢!</P>

hu9jj 发表于 2006-9-21 22:13

8楼提供的资料确实很好,我已经收下了,谢谢!

lsdm 发表于 2006-9-28 21:41

<DIV class=quote twffan="done"><B>以下是引用<U>hu9jj</U>在2006-9-21 22:13:37的发言:</B><BR>8楼提供的资料确实很好,我已经收下了,谢谢!</DIV>
<P>确实不错,偶也收藏了。<BR><BR></P>

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.