应用程序即ODBC 界面执行下列首要办事,并提供了一组对数据库访问的专业API(应用程序编制程序接口)

应用程序

应用程序对外提供使用者交谈界面,同时对内执行资料之准备工作数据库系统所传回来的结果在体现给使用者看。简而言之,应用程序即ODBC 界面执行下列主要工作:1. Request a connection(i.e.session) with a data source. 2. Send SQL requests to the data source. 3. Define storage areas and data formats for the result of SQL requests. 4. Request results. 5. Process errors. 6. Request a commit or rollback of operations for transcation control. 7. Terminate a connection a data source.

 

使得管理器

使得管理器本人是MS Windows中二个动态连接链接库文件(ODBC.DLL)。应用程序透过驱动管理器去加载并再三再四数据源的驱动程序(driver)并连续数据源。驱动管理器首要工作如下:
1. Uses ODBC INI file to map a data source name to a specific driver DLL.
2. Processes server ODBC initialization calls.
3. Provides entry points to ODBC functions for each driver.
4. Provides parameter validation and sequence validation for ODBC calls.

ODBC是一种连接数据库的绽开标准,OLEDB(对象链接和停放数据库)位于ODBC层与应用程序之间.
在您的ASP页面里,ADO是置身OLEDB之上的施用程序.
你的ADO调用先被送到OLEDB,然后再交由ODBC处理

驱动程序

驱动程序也是二个动态连接链接库文件,当应用程序呼叫ODBC函数,SQLConnect 或SQLDriverConnect时,驱动管理器就会加载相对的驱动程序与应用程序呼应。驱动程序重固然推行ODBC之相对函数,并与相应的数据源(Data Source)做沟通。驱动程序之工作如下:
1. Establishes a connect to a data source.
2. Submits requests to a data sources.
3. Translates data to or from other formats,if requested by the application.
4. Return results to the application.
5. Formats errors into standard error codes and returns them to the application.
6. Declares and manipulates cursors if necessary (invisible to the application).
7. Initiates transactions if the data source requires explicit transaction initiation(invisible to the app).

ODBC是一种连接数据库的怒放标准。
ODBC(OpenDataBase
Connectivity,开放数据库互连)是微软集团绽放服务组织(WOSA,Windows
OpenServices
Architecture)中关于数据库的贰个组成都部队分,它确立了一组正式,并提供了一组对数据库访问的正经API(应用程序编制程序接口)。这几个API利用SQL来完结其超越4/8职务。ODBC自身也提供了对SQL语言的扶助,用户能够一贯将SQL语句送给ODBC。 

数据源

 

图片 1ODBC程序流程图册

数据源唯一数据库系统(DBMS)或是数据库操作系统的1个整合。举例来说,应用库系统可以而且与下列多个或内部一个数据源连接。
1. A DBMaker DBMS running on a Microsoft Windows NT accessed by NTaccessed by TCP/IP.
2. A Tandem NonStop SQL DBMS running on the Guardian 90 accessed via a gateway.
运用系统程序通过标准API来延续数据源,因此开发进度中不需点名特定的数据库系统,所以数据库系统的开放性从此被确立。作者觉得在处理器种类进入开放时代之时,大家应可体会到正规的创制与系统的前进是同一的首要性。而音信种类架构在数据库的须求性也趁机音信化社会的蓬勃发展而更显首要,因而在ODBC标准稳步成熟的还要,大家也还要能够感受到数据库系统在开放架构下,更需扮演强而有力的脚色。
听他们说 ODBC 的基准,其API共可分为以下九类:
1. SQLAllocEnv.
2. SQLAllocConnect.
3. SQLConnect.
4. SQLPriverConnect.
5. SQLBrowseConnect.
1. SQLDataSource.
2. SQLGetInfo.
3. SQLGetFunctions.
4. SQLGetTypeInfo.
1. SQLSetConnectOption.
IV. 准备SQL指令之供给
1. SQLAllocStmt. 2. SQLPrepare. 3. SQLSetParam. 4. SQLParamOptions. 5. SQLGetCursorName. 6.SQLSetCursorName. 7. SQLSetScrollOptions.
1. SQLExecute. 2. SQLExecDirect. 3. SQLNativeSql. 4. SQLDescribeParanl. 5. SQLNumParams. 6.SQLParamData. 7. SQLPutData.
VI. 取得实践结果及有关结果的音讯
1. SQLRowCount. 2. SQLNumResultCols. 3. SQLDescribeCol. 4. SQLColAttributes. 5. SQLBindCol. 6.SQLFetch. 7. SQLExtendedFetch. 8. SQLGetData. 9. SQLSetDos. 10. SQLMoreResults. 11. SQLError.
VII. 取得有关数据源系统回录(System tables or Catalog)的音讯
1. SQLColumnPrivileges. 2. SQLColumns. 3. SQLForeignkeys. 4. SQLPrimaryKeys. 5.SQLProcedureColumns. 6. SQLProcedures. 7. SQLSpecialColumns. 8. SQLStatistics. 9. SQLTablePrivileges. 10. SQLTables.
VIII. 停止 SQL 指令供给
1. SQLFreeStmt. 2. SQLCancel. 3. SQLTransact.
IX. 结束与数据源的连年
1. SQLDisconnect. 2. SQLFreeConnect. 3. SQLFreeEnv.
如上所列之 ODBC API函数,我们发现全都是 SQL 为发端。除以上述分类外,各种函数在其要求性或复杂度上, 更被显明在分化的多少个层级中 ODBC 函数的层级为中央层(Core level),第壹层(Level 1),和第①层(Level 2)。我们再来看贰个很基本的应用程序步骤是何许呢? 下图告诉我们以此答案。
忆起 ODBC 的架构及其实施进度,ODBC 作育了”应用程序独立性(Application Independency)”的特色,使应用程序不需在乎数据源是何种数据库系统大概纯粹是个资料或文本文件,只要相对驱动程序能做到对接的意义,则应用程序即可达到可观的独立性。

 

它本身就是为了是数据库的使用者不必考虑动用的是何种数据库而只须求平等的操作而安排的。

ODBC – 更新

ODBC未来总的来说是三个相比较古老的东西,在壹玖玖捌年左右就相比定型了,其风靡的版本是3.8(Win7自带;Win8上有更新但仍叫 3.8),MICROSOFT也不打算对它做哪些大的换代,越来越多的秋波应该被置于OLEDB、.NET DATA PROVIDEOdyssey身上了。可是,正因为它是三个比较早熟和古老的正式,ODBC在超越3/6DBMS上都能够利用,可以说三个近似的DBMS都应当协理ODBC 3.0或以上的版本。
若果您打算攻读怎么着支付3个ODBC D奥德赛IVE景逸SUV,最好的参考资料如故MSDN。假如您不打算选取ODBC API做开发,学习和询问ODBC也得以扩张对DBMS的摸底,也能更好地知道别的的数据库访问接口和技巧。
叁个基于ODBC的应用程序对数据库的操作不依靠任何DBMS,不直接与DBMS打交道,全数的数据库操作由相应的DBMS的ODBC驱动程序实现。也正是说,不论是FoxPro、Access照旧Oracle数据库,均可用ODBCAPI举行走访。同理可得,ODBC的最大亮点是能以统一的办法处理全体的数据库。
开放数据库互连(ODBC)是Microsoft引进的一种早期数据库接口技术。它实质上是我们要在本章后边加以商量的ADO的前身。Microsoft引进这种技术的二个重中之重缘由是,以非语言专用的主意,提须要程序员一种访问数据库内容的简便方法。换句话说,访问DBF文件或Access Basic以获得MDB文件中的数据时,无需通晓Xbase程序设计语言。事实上,Visual C++正是这么3个顺序设计平台,即Microsoft最初是以ODBC为对象的。
您会发现,ODBC工作起来和Windows一样,它用饱含在DLL内的驱动程序达成职责。其实,ODBC提供一套八个驱动程序:八个是数据库管理器的语言,另一个为顺序设计语言提供公用接口。允许Visual C++用规范的函数调用经公用接口访问数据库的剧情,是那四个驱动程序的相会点。当然,还有其余和ODBC有关的实用程序类型的DLL。例如,二个那样的DLL允许你管理ODBC数据源。ODBC的实际上管理接口出现在SYSTEM文件夹中的有些CPL(控制面板)文件中摸索大家在背后要谈到那方面包车型大巴题材。ODBC的确能履行承诺,提供对数据库内容的访问,并且没有太多的难点。它从未提供数据库管理器和C之间尽大概最好的多寡转换,那种景观是局部,但它多半能像广告所说的那样去工作。唯一影响ODBC前程的是,它的进程异常低至少较早版本的成品是如此。ODBC最初面世时,一些开发者曾说,因为速度难点,ODBC永远也不会在数据库领域发生太大的影响。不过,以Microsoft的商海影响力,ODBC毫无疑问是大功告成了。明天,只要有三种ODBC驱动程序的一种,那么大概每2个数据库管理器的显示都会很出色。

ODBC是Open Database Connect即开放数据库互连的简称,它是由Microsoft
公司于一九九一年建议的贰个用以访问数据库的统一界面标准,是应用程序和数据库系统之间的中间件。它通过运用相应采用平台上和所需数据库对应的驱动程序与应用程序的相互来完毕对数据库的操作,防止了在应用程序中一贯调用与数据库相关的操作,从而提供了数据库的独立性。
ODBC 首要由驱动程序和驱动程序管理器组成。驱动程序是三个用以辅助ODBC
函数调用的模块,每种驱动程序对应于相应的数据库,当应用程序从基于二个数据库系统移植到另1个时,只需变更应用程序中由ODBC
管理程序设定的与相应数据库系统对应的昵称即可。驱动程序管理器可链接到全部ODBC
应用程序中,它负责管理应用程序中ODBC 函数与DLL 中等学校函授数的绑定。
ODBC
使用层次的主意来管理数据库,在数据库通讯结构的每一层,对或然出现注重数据库产品本人特点的地点,ODBC
都引入一个国有接口以消除潜在的差异性,从而很好地消除了基于数据库系统应用程序的对立独立性,那也是ODBC
一经推出就获取巨大成功的机要原因之一。

ODBC – 使用

 

图片 2ODBC图册

在能够用ODBC做任何事从前,必须有3个数据库模型在脑子里。在贰个像Access那样的应用程序中创制数据库框架平常会更易于一些,因为Access能够13分轻松地提供成功职务所需的种种效用。可是,假如你安装了所需的ODBC驱动程序,那就足以在C++中制造程序框架。一设计了数据库,就要为其创建ODBC数据源,我们会在本节中看出这或多或少。上边的历程并不曾严刻地印证活动的经过,只是表明了一种配备数据源的技术。
诠释 笔者会在第肆章中证实如何成立一个Access数据库。今后,我们只是看一看,为了访问十一分数据库,我们下一步要做些什么。

图片 3ODBC图册

2.

图片 4ODBC图册

单击Add按钮。会看出Create New Data Source(成立新的数据源)对话框,如下图所示。
技能 检查ODBC Data Source Administrator(ODBC数据源管理员)对话框的About选项卡,能够鲜明你正在采用的ODBC驱动程序的时尚版本。那一个选项卡包罗了各个ODBC DLL的本子号、生产厂商的名目以及并发在SYSTEM文件夹中的文件名。超越55%场馆下,通过查阅版本号能够验证ODBC驱动程序是不是是最新的本子。
3. 增选三个数据源。对本演习来说,作者采纳了Access数据源。单击Finish(完毕),汇合到某类别型的配备对话框,如下面包车型大巴ODBC Microsoft Access 97Setup(设置)对话框所示。
诠释:要是您接纳的数据源和本人在本实例中挑选的差别,那么所需的布置步骤也和那里表明的两样枣每种ODBC驱动程序都需要不一样品种的安顿。
4. 在Data Source Name(数据源名)域内输入数据源名称。一定要接纳意义综上说述但又不过分冗长的名称。小编选取Food Database(食物数据库),因为自个儿最终要创造贰个与食品仓库储存有关的数据库的链接。
5. 在Description(描述)域内输入一段表明性文字。能够让那一个项比上一个项稍长一些,因为它讲述数据库的用处。另一方面,也无须写入像《战争与和平》那样大的小说。对本练习,小编输入了:This database contains inventoryinformation for a food store(本数据库包蕴食物存款和储蓄的仓库储存信息)。
6. 单击Select(选拔)按钮。你会合到四个File Open-type(文件ODBC打开类型)对话框,可以在那里选拔一个现有的数据库。ODBC驱动程序会自动接纳正确的公文扩张名。
技术 并不是必然要提前规划数据库。请小心,Access ODBC驱动程序还包蕴一个创设新数据库的按钮。很多ODBC驱动程序都提供了那种效益,但并不是清一色那样。单击那么些按钮会运维数据库管理器应用程序,并同意你设计数据库。注意有少数很有意思,Access ODBC驱动程序还会同意你使用那个对话框压缩或修补数据库。

图片 5ODBC图册

7. 取舍系统数据库选项。在超越八分之四状态下要选取None(无),除非你为应用程序越发创造了一个连串数据库。假若真的添加了系统数据库,它会产出在ODBC Microsoft Access 97 Setup(设置)对话框的System DSN(系统DSN)选项卡上。
8. 单击Advanced(高级)按钮,会看到Set Advanced Options(设置高级选项)对话框,如下图所示。无需对成千成万项做修改。然则,要把客户名添加到LoginName(注册名)域中,把客户口令添加到Password(口令)域中。这允许客户在访问你的数据库时,根本不用了然走访的底细–甚至毫无理解被记录的客户名。技巧 为最优化潜在的区域,能够浏览一下ODBC驱动程序提供的一多元高级选项。例如,Access ODBC允许你更改DBMS所用的线程数量。缺省设置3一般性提供了不易的习性,然而你会发现,复杂程序中线程多一些以来,能够增加前台职务的速度。由于Windows使用了一些总括机循环对线程实施管制,所以利用了过多的线程又会减低应用程序的进程。
9.装置完所需的高档选项后单击OK。
10.再次单击OK关闭ODBC Microsoft Access 97 Setup(设置)对话框。应该看到,新的设置项已经添加到ODBC Data Source Administrator(ODBC数据源管理员)对话框中。假设今后要为数据库更改这么些设置,只要简单地加亮它并单击Configure(配置)。删除数据库配置也很简单,只要加亮DSN并单击Remove(删除)即可。创设系统DSN和创造用户DSN大概。两者间七个明白的距离是,使用它们的目标分化。系统DSN告诉应用程序如何与数据库相连,在部分情形下何以与之交互成效。系统DSN不带有数据库所需的其他数据–它包罗连接标准,当中能够归纳从用户列表到重要文件地方的总体音讯。

 

从构造上分,ODBC 分为单束式和多束式两类。

ODBC – 种类

1.单束式驱动程序

管制章程

ODBC 分为单束式和多束式两类
ODBC 使用层次的章程来保管数据库,在数据库通讯结构的每一层,对或然出现依赖数据库产品本人特点的地方,ODBC 都引入三个集体接口以缓解潜在的差异性,从而很好地消除了依照数据库系统应用程序的争持独立性,那也是ODBC 一经推出就取得巨大成功的重中之重原因之一。
从组织上分,ODBC 分为单束式和多束式两类。

单束式驱动程序介于应用程序和数据库之间,像中介驱动程序一样数据提供四个合并的多寡访问格局。当用户实行数据库操作时,应用程序传递三个ODBC
函数调用给ODBC 驱动程序管理器,由ODBC API
判断该调用是由它直接处理并将结果重返依然交给驱动程序执行并将结果回到。由上可见,单束式驱动程序本人是三个数据库引擎,由它平昔可做到对数据库的操作,固然该数据库恐怕位于互连网的别的地点。

单束式驱动程序

 

图片 6ODBC图册

单束式驱动程序介于应用程序和数据库之间,像中介驱动程序一样数据提供1个集合的数目访问情势。当用户展开数据库操作时,应用程序传递二个ODBC 函数调用给ODBC 驱动程序管理器,由ODBC API 判断该调用是由它直接处理并将结果回到仍旧交给驱动程序执行并将结果再次来到。由上可知,单束式驱动程序自个儿是叁个数据库引擎,由它平素可做到对数据库的操作,尽管该数据库大概位于网络的别的地方。

 

2.多束式驱动程序

多束式驱动程序

多束式驱动程序负责在数据库引擎和客户应用程序之间传递命令和数码,它自个儿并不履行多少处理操作而用于远程操作的互联网通讯协议的贰个界面。
前端应用程序建议对数据库处理的请求,该请求转给ODBC 驱动程序管理器,驱动程序管理器根据请求的事态,就地达成或传给多束驱动程序,多束式驱动程序将呼吁翻译为一定厂家的数据库通讯接口(如Oracle 的SQLNet)所能精晓的款式并交于接口去处理,接口把请求经网络传送给服务器上的数目引擎,服务器处理完后把结果发回给数据库通讯接口,数据库接口将结果传给多束式ODBC 驱动程序,再由驱动程序将结果传给应用程序。

多束式驱动程序负责在数据库引擎和客户应用程序之间传递命令和数目,它本身并不履行多少处理操作而用于远程操作的网络通讯协议的一个界面。前端应用程序提议对数据库处理的呼吁,该请求转给ODBC
驱动程序管理器,驱动程序管理器依照请求的场地,就地达成或传给多束驱动程序,多束式驱动程序将请求翻译为特定厂家的数据库通讯接口(如Oracle
的SQLNet)所能掌握的花样并交于接口去处理,接口把请求经网络传递给服务器上的多寡引擎,服务器处理完后把结果发回给数据库通讯接口,数据库接口将结果传给多束式ODBC
驱动程序,再由驱动程序将结果传给应用程序。

ODBC – 文件DSN

您大概早已注意到了,上一节中的实例有失水准。假诺想单独安插互连网上的每一台机器,它会工作得很好,但那说不定不是二个好主意。还有一种存款和储蓄创立数据源所需新闻的法子:文件DSN。那便是大家要在本节中商量的。上面包车型大巴长河表达了安装文件DSN的相似方法。

 

图片 7ODBC图册

1. 双击Control Panel(控制面板)中的三13位ODBC小程序,会看到ODBCData Source Administrator(ODBC数据源管理员)对话框。选取File DSN(文件DSN)选项卡,会看出如下图所示的对话框。要做的第三件事是,选取仓库储存DSN新闻的地点。2. 单击Look In(观望)下拉列表框,会晤到一三种当前机械的目录和驱动器。可以为DSN使用任何存款和储蓄地方。作者平常在网络上选用数据仓库储存款和储蓄目录。使用UNC(通用命名标准)意味着,每一个人都会用相同的路线来拜会DSN文件。
技能 Up One Level(上一和在Explorer中是一模一样的。能够用该按钮再次来到到上一流目录。最终,你会在My Computer(作者的总结机)处截至,看到机械上存有驱动器的清单。
3. 单击Add(添加),汇合到Create New Data Source(创制新的数据源)对话框。
4. 在列表中甄选一个ODBC驱动程序,然后单击Next(下1个)。对本示例来说,笔者重新选用Access。你会看到Create New Data Source(创立新的数据源)对话框的下一页突显出来。在那边采取数据源的名目和仓储地方。单击Browse(浏览)会看到File Open-type(文件打开类型)对话框,在此间接选举拔仓库储存地点。输入二个文件名,ODBC向导自动添加DSN作为扩充名。在本示例中,笔者选拔SAMPLE.DSN作为DSN文件的称谓。5. 单击Next(下二个)会师到二个摘要对话框,如下图所示。它表达正准备开创的DSN的参数。6. 单击Finish(实现)。那时,会面到ODBC Microsoft Access 97 Setup(设置)对话框的修改版。无法像大家在上一节所做的那样,在Data Source Name(数据源名)或Description(描述)字段中添加新闻了,可是,其余的都和原先一样。7. 必将要单击Select(选取)按钮输入数据库的名号,然后采取想要使用的数据库(即使想成立3个新数据库,也得以单击Create(创造))。
8. 实现布局进度时单击OK,你会在ODBC Data Source Administrator(ODBC数据源管理员)对话框中看到一个新的DSN文件项。和我们创立的前3个DSN差异,那么些DSN实际上创设能够用文件编辑器来查阅和编排的文本。图4.1来得了自作者的公文的外观。请留意,它符合标准的INI文件格式。你能够在上面看到【ODBC】标题。下边是自小编选用的整整设置。那个文件允许自身从Visual C++选取数据源,而机器间的传输也是万分简单的。作者还能在设置进程中按需要改变位置–在您不明了用户会有啥样的安装时,那一点确实很科学。

 

ODBC(开放数据库互连):是Microsoft引进的一种早期数据库接口技术。它实际上是ADO的前身。早期的数据库连接是尤其困难的.
每一种数据库的格式都不均等,开发者得对她们所支付的各样数据库的底部API有深厚的领悟.
因而,能处理盘根错节数据库的通用的API就涌出了. 也正是当今的ODBC(Open
Database Connectivity), ODBC是大千世界在创立通用API的最初产物.
有许多样数据库服从了那种专业,被号称ODBC包容的数量库.

ODBC – 图书音讯

图书一 

图片 8绽放数据库互联(ODBC)技术与使用图册

主导音信
盛开数据库互联(ODBC)技术与使用
作者:文必龙
ISBN:9787030055888
出版社:科学出版社
出版时间:壹玖玖玖
宗旨:数据库管理连串–接口
内容简介
开放数据库互联(ODBC)为数据库应用程序访问异构型数据库提供了统一的数据存取API,应用程序不必再次编写翻译、连接就足以与差异的DBMS相联。目前支撑ODBC的有Oracle,Access,X-Base等10四种流行的DBMS。本书介绍了ODBC的基本原理及SQL语言,并从四个角度介绍ODBC技术:一是从ODBC应用程序设计者的角度,将选用和支出中国和日本常要用到的编制程序环节先总结成框架格局,然后分步骤讲解;另一是从ODBC驱动程序开发人士的角度,介绍怎样开发ODBC驱动程序。本书还介绍了关于ODBC软件安装及数据源配置的法子。本书适用于周边数据库应用人士和开发人士,也可供大、中等专业高校学院和学校师生参考。
图书二 
书名:开放数据库互连
作者:( 美)Que Corporation著
ISBN号:7-302-02035-3
价格: 40.00
出版地:北京
出版社:哈工业余大学学东军事和政院学出版社
出版时间:1991.11
页数:355 页
开本:16开
附注 :香江科海培养和磨练大旨
本书原版的书文名:Using ODBC 2
任何版本 :Using ODBC 2
大旨 :关周全据库 — 应用程序
科图分分类配号 :73.967
责任者:Que Corporation 著
孟小峰译

 

OLEDB(对象链接和放手数据库)位于ODBC层与应用程序之间.
在你的ASP页面里,ADO是坐落OLEDB之上的”应用程序”.
你的ADO调用先被送到OLEDB,然后再交由ODBC处理.
你能够一直连接到OLEDB层,借使您那样做了,你将见到服务器端游标(recordset的缺省的游标,也是最常用的游标)品质的升高.

ODBC – 记录事务

调剂应用程序时加以记录,那一点很重点。ODBC Data Source Administrator(ODBC数据源管理员)对话框也提供了那样的效劳。可以选用跟踪你通过ODBC对数据库进行的种种业务。当然,那几个记录可能会变得一点都相当的大,但大家并不是总要使用它们。
开头记录事务时,只要双击控制面板(Control Panel)中的34人ODBC小程序,打开ODBC Data Source Administrator(ODBC数据源管理员)对话框。选用Tracing(跟踪)选项卡,你会看到如下图所示的对话框(请留意,该对话框的Windows 98版本略有分化)。如你所见,有四个单选按钮明显哪天跟踪ODBC调用。缺省安装是Don’tTrace(不跟踪)。假若打算调节和测试单个应用程序,应该选用All the Time(全体时间)。One-Time Only(只叁遍)在下三遍再三再四时期跟踪ODBC调用枣只要连接一拆除,跟踪就关门。当用户带着一定的题材调用时,这是二个没错的选拔。能够监视三回对话时期的接连,然后用该音信支持创设排除错误的陈设。
跟踪不会自动早先。还要单击对话框左侧的Start Tracing Now(今后启幕跟踪)。只要跟踪一从头,按钮标题就变成Stop Tracing Now(今后结束跟踪)。再一次单击按钮关闭跟踪进程。
唯一要顾虑的任何设置是Log File Path(记录文件路径)。ODBC平常在根目录下的SQL.LOG文件中放入事务新闻。可是,也足以将该音信放在网络驱动器上,也许用户看不到的地点。在调节和测试进程中,缺省职位一般就比较适度。
诠释 除非你想创建自个儿的日记记录DLL,不然不要更改Custom Trace DLL(自定义跟踪DLL)域内的装置。在此处列出的DLL枣ODBCTRAC.DLL枣负责维持工作记录。

参考 http://www.connectionstrings.com/

用odbc连接数据库:
odbc中提供三种dsn,它们的分别很不难:用户dsn只可以用来本用户。系统dsn和文书dsn的界别只在于连接音讯的寄放地方分化:系统dsn存放在odbc储存区里,而文件dsn则位于二个文书文件中。
它们的开创方法就背着了。

在asp中选用它们时,写法如下:

1.sql server:

用系统dsn: connstr=”DSN=dsnname; UID=xx; PWD=xxx;DATABASE=dbname”
用文件dsn:connstr=”FILEDSN=xx;UID=xx; PWD=xxx;DATABASE=dbname”
还足以用连续字符串(从而不用再建立dsn):
connstr=”DRIVER={SQLSERVER};SERVER=servername;UID=xx;PWD=xxx”

2.access:
用系统dsn: connstr=”DSN=dsnname”
(或者为:connstr=”DSN=dsnname;UID=xx;PWD=xxx”)
用文件dsn:connstr=”FILEDSN=xx”
还是能用接二连三字符串(从而不用再建立dsn):
connstr=”DRIVER={MicrosoftAccess Driver};DBQ=d:\abc\abc.mdb”

用oledb连接数据库:
1.sql server: connstr=”PROVIDER=SQLOLEDB;
DATASOURCE=servername;UID=xx;PWD=xxx;DATABASE=dbname”

2.access: connstr=”PROVICER=MICROSOFT.JET.OLEDB.4.0;
DATASOURCE=c:\abc\abc.mdb”

值得注意的是,OLE DB对ODBC的包容性,允许OLE
DB访问现有的ODBC数据源。其独到之处很明显,由于ODBC绝对OLE
DB来说使用得更其宽广,由此可以获得的ODBC驱动程序相应地要比OLE
DB的要多。那样不自然要得到OLE
DB的驱动程序,就可以立即访问原本的数据系统。
提供者位于OLE
DB层,而驱动程序位于ODBC层。假使想行使3个ODBC数据源,需求运用针对ODBC的OLE
DB提供者,它会跟着使用相应的ODBC驱动程序。假设不须求动用ODBC数据源,那么能够行使相应的OLE
DB提供者,那个常见称为本地提供者(native provider)。
能够精通地来看使用ODBC提供者意味着须求3个额外的层。因而,当访问同一的多少时,针对ODBC的OLE
DB提供者大概会比地点的OLEDB提供者的进度慢一些。

ODBC,OLEDB连接字符串详解
**SQL Server

**u ODBC

  1. Standard Security:
    “Driver={SQLServer};Server=Aron1;Database=pubs;Uid=sa;Pwd=asdasd;”
  2. Trusted connection:
    “Driver={SQLServer};Server=Aron1;Database=pubs;Trusted_Connection=yes;”
  3. Prompt for username and password:
    oConn.Properties(“Prompt”)= adPromptAlways
    oConn.Open”Driver={SQL Server};Server=Aron1;DataBase=pubs;”

**u OLE DB, OleDbConnection (.NET)

**1. Standard Security:
“Provider=sqloledb;DataSource=Aron1;Initial Catalog=pubs;User
Id=sa;Password=asdasd;”

  1. Trusted Connection:
    “Provider=sqloledb;DataSource=Aron1;Initial Catalog=pubs;Integrated
    Security=SSPI;”
    (useserverName\instanceName as Data Source to use an specifik SQLServer
    instance,only SQLServer2000)
  2. Prompt for username and password:
    oConn.Provider= “sqloledb”
    oConn.Properties(“Prompt”)= adPromptAlways
    oConn.Open”Data Source=Aron1;Initial Catalog=pubs;”
  3. Connect via an IP address:
    “Provider=sqloledb;DataSource=190.190.200.100,1433;Network
    Library=DBMSSOCN;Initial Catalog=pubs;UserID=sa;Password=asdasd;”
    (DBMSSOCN=TCP/IPinstead of Named Pipes, at the end of the Data Source is
    the port to use (1433is the default))

**u SqlConnection (.NET)

**1. Standard Security:
“DataSource=Aron1;Initial Catalog=pubs;User Id=sa;Password=asdasd;”

  • or –
    “Server=Aron1;Database=pubs;UserID=sa;Password=asdasd;Trusted_Connection=False”
    (bothconnection strings produces the same result)
  1. Trusted Connection:
    “DataSource=Aron1;Initial Catalog=pubs;Integrated Security=SSPI;”
  • or –
    “Server=Aron1;Database=pubs;Trusted_Connection=True;”
    (bothconnection strings produces the same result)
    (useserverName\instanceName as Data Source to use an specifik SQLServer
    instance,only SQLServer2000)
  1. Connect via an IP address:
    “DataSource=190.190.200.100,1433;Network Library=DBMSSOCN;Initial
    Catalog=pubs;UserID=sa;Password=asdasd;”
    (DBMSSOCN=TCP/IPinstead of Named Pipes, at the end of the Data Source is
    the port to use (1433is the default))