1. 连接数据源 ADO通过连接对象Connection建立与数据库和数据源的连接,图6-25说明ASP连接SQL Server数据库和其他数据源的流程。 图6-25 ADO与数据库和数据源的连接流程图 下面给出SQL Server数据库连接和执行SQL命令的程序示例。 < % '---创建ADO的连接对象Connection set objConn = Server.CreateObject("ADODB.Connection " ) '---使用数据源pubs打开连接 objConn.Open "pubs" %> (2) 程序清单6.3,使用ODBC的OLE DB提供者,即通过ODBC(无DSN)连接字符串连接SQL Server。 < % '---创建ADO的连接对象Connection set objConn = Server.CreateObject("ADODB.Connection " ) '---使用连接字符串:SQL Server数据库,使用没有密码的用户名"sa", '---创建对象名为misserver的服务器的连接,访问名为pubs的数据库 objConn.Open "Driver={SQL Server}; Server=misserver; " & " Uid=sa;Pwd=;Database=pubs " % > 在ODBC 中,如果用户希望从ASP连接到SQL Server,必须通过ODBC,再通过SQL Server 的ODBC驱动程序,然后到达SQL Server,如图6-26。但是,使用ODBC的OLE DB提供者,就必须通过OLE DB到ODBC的OLE DB提供者,再通过ODBC到达SQL Server的ODBC驱动程序,最后连接到SQL Server,如图6-27。 图6-27 通过ODBC的OLE DB提供者访问SQL Server 使用ADO2.0和Microsoft Data Access Components(MDAC),有一些新的OLE DB提供者,其中包括SQL Server的OLE DB提供者。使用新的SQL Server的OLE DB提供者,即可直接通过OLE DB访问SQL Server,而不必再通过ODBC 。程序清单6.4显示如何通过ADO 2.0中的OLE DB 提供者访问SQL Server。 (3) 程序清单6.4:通过OLE DB 连接字符串连接SQL Server < % '--- 创建Connection对象 set objConn = Server.CreateObject("ADODB.Connection") '----通过连接字符串:Server的OLE DB提供者(SQLOLEDB)使用没有密码的用户名"sa", '---创建对名为misserver的服务器的连接,访问名为pubs的数据库 objConn.Open "Provider=SQLOLEDB.1;User ID=sa;Password=;" &_" Initial Catalog=pubs;Data Source=misserver" % > 当然,如果不希望把这条长参数传送到Connection.Open方法,可以将连接字符串存储在global.asa文件的Application 对象中: Application("ConnString") = "Provider=SQLOLEDB.1;User ID=sa;" & _" Password=;Initial Catalog=pubs;Data Source=misserver" 在存储连接字符串到Application对象变量之后,就可简单使用它们打开连接,如程序清单6.5所示。 (4) 程序清单6.5:使用Application对象打开连接 '---创建Connection对象 Set objConn = Server.CreateObject("ADODB.Connection") '---通过存储在Application中连接字符串打开连接 ObjConn.Open Application("ConnString") 上面讲解了ADO连接SQL Server数据库的四种连接数据库的方式: ・ 通过ODBC数据源连接; ・ 通过ODBC的无数据源连接字符串连接; ・ 通过OLE DB提供者连接字符串连接; ・ 通过OLE DB的提供者字符串放入Application对象打开连接。 用户可根据自己的需要和配置选用合适的连接方式 Connection对象除用来管理ADO的各种连接方式外,还可执行以下的管理任务:执行数据库事务、使用连接池、执行SQL语句等,下面给于简单介绍。 |