ODBC连接字符串全解

合集下载

vc之ODBC连接数据库图文全解

vc之ODBC连接数据库图文全解

vc之ODBC连接数据库图文全解我们在编程时要保存各种实时接收的数据,并为以后的数据再现回放,就应该建立数据文件,而这种数据文件可以用普通文件读写方式,但当数据类型较多且要求随时回放数据时,要求编程时设置较大的动态数组,这会占用较多的系统资源,甚至导致程序崩溃;而利用数据库则可以较好地解决这个问题,我们将数据放到数据源文件中,通过编程接口对其进行访问。

ODBC(开放的数据库连接:Open Database Connectivity)为各种类型的数据库管理系统提供了统一的编程接口,我们在下面的几篇文章中,首先通过实例说明ODBC技术的应用方法,然后说明如何将串口数据实时保存在数据源文件中,这一方面介绍VC中ODBC技术的应用(前面的例子不涉及串口技术,以方便只想了解ODBC技术的读者,又为利用ODBC技术保存串口编程数据提供范例,虽然前面几个例程与串口通讯不相关,但如果对使用数据库不熟悉,也请从前面有耐心地看下去。

1.首先在控制面板中,打开ODBC数据源,点击用户DSN选项,在出现的界面中点击添加,如下图所示:然后,点击完成按钮,出现下图,填入数据源名(可随意取名,本处设为biao)点击确定即可。

2.在ACCESS中创建数据库,本例中为data(只包含number,name,score三列),可从我提供的这个例子下COPY3.建立应用程序项目(1)打开File 菜单的New 选项,选取Projects,选择MFC AppWizard (exe),填入工程名,本例为DATA1(2)把数据库文件data拷入新建的工程目录。

(3)应用程序的类型指定为SDI,在Step2 对话框中选择Header Files Only选项,在Step6是将视图基类指定为CScrollView。

(4)用ClassWizard 创建记录集类。

从Add Class菜单中选择New,并按下图填充对话框:(说明:一个CRecordset对象代表从数据源中查询的一个记录集。

数据库,介绍其连接符的含义及使用方法

数据库,介绍其连接符的含义及使用方法

数据库,介绍其连接符的含义及使用方法ODBC(OpenDatabaseConnectivity):在早期,各个数据库的格式均不统一,为了能处理各种各样的数据库,人们就创建了ODBC这样一个通用的API 库。

但是程序员在开发数据库程序中,仍然感到困难,所以微软公司在DAO、ADO的基础上提出了OLEDB。

OLEDB:一个基于COM的数据存储对象,能提供对所有类型的数据的操作,甚至能在离线的情况下存取数据。

在前面使用DSN数据源时,每次都需要在ODBC数据管理器当中建立一个数据源,然后Web程序就通过ODBC层来与数据库进行通信。

但是OLEDB消除了Web应用程序和数据库之间的ODBC层,从而提高了连接的速度。

由于不同的数据库需要不同的OLEDB驱动程序,所以在使用OLEDB时,需要指定驱动程序。

如果没有指定ASP会使用ODBC驱动程序的默认OLEDB提供程序与ODBC驱动程序进行通信,然后再与数据库进行通信。

可以在微软的网站上下载MicrosoftDataAccessComponents(简称MDAC)2.8软件包,并将其安装在运行IIS或PWS的Windows计算机上,获取用于MicrosoftAccess和SQLServer的OLEDB提供程序。

而Oracle数据库的OLEDB提供程序需要另外从OracleWeb站点下载,该站点需要读者注册为用户才能下载。

(注意:由于OLEDB由微软公司提出,所以只有Windows2000/2003/XP 支持。

)对于Access和SQLServer数据库,连接字符串具有如下语法格式。

ODBC:Driver={Driver(*.mdb)};DBQ=[DSN]OLEDB:Provider=[OLEDBProvider];Server=[ServerName];Database=[Databa seName];UID=[UserID];PWD=[Password]其中涉及的参数解析如下:Provider:该参数指定数据库的OLEDB提供程序。

关于ODBC数据源连接文本

关于ODBC数据源连接文本

关于ODBC数据源连接⽂本关于ODBC数据源连接⽂本 在《外部数据库的连接原理》⼀讲中我们说过,ODBC提供对多种数据库的⽀持,如dBase、Access、MS SQL Server及Oracle,也就是说运⽤ODBC数据源中所提供的连接代码,我们可以实现对多种数据库的连接。

以连接Access数据库为例,ODBC数据源连接⽂本的格式是: “Driver={数据库驱动程序};Dbq=数据库⽂件;” 在以上连接⽂本中,如果数据库跟程序在同⼀⽬录下,或者⽤变量DefaultDir指定了数据库所在⽬录,则数据库⽂件可以不⽤全路径名,如下即可: “ODBC;DBQ=MSAccess.mdb;Driver={Microsoft Access Driver (*.mdb)};” 如下也可: “ODBC;DBQ=MSAccess.mdb;DefaultDir=d:/Downloads/e21;Driver={Microsoft Access Driver (*.mdb)};” 如果数据库跟程序不在同⼀⽬录下,或者没有⽤变量DefaultDir指定数据库所在⽬录,则数据库⽂件需要⽤全路径名,如下: “ODBC;DBQ=E:/Quake III Arena/MSAccess.mdb;Driver={Microsoft Access Driver (*.mdb)};” 以上所说的是连接Access数据库的格式,那么连接其他数据库的ODBC数据源连接⽂本⼜是怎样的?连接不同类型的数据库要使⽤不同的对应驱动程序,没忘记吧!不同的驱动程序当然它们的参数组合也就不同了,每⼀种不同驱动程序都有其特定的的参数形式: ⑴、MS Access ODBC DSNless 连接: ☆、参数:Driver 设置值:{Microsoft Access Driver (*.mdb)} ☆、参数:Dbq 设置值:实际路径⽂件名称 ☆、例句: “Driver={Microsoft Access Driver (*.mdb)};Dbq=c:/somepath/dbname.mdb;Uid=Admin;Pwd=pass; ” ⑵、dBase ODBC DSNless 连接: ☆、参数:Driver 设置值:{Microsoft dBASE Driver (*.dbf)} ☆、参数:Dbq 设置值:实际路径⽂件名称 ☆、例句: “Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=c:/somepath/dbname.dbf; ” ⑶、Oracle ODBC DSNless 连接: ☆、参数:Driver 设置值:{Microsoft ODBC for Oracle} ☆、参数:Dbq 设置值:实际路径⽂件名称 ☆、例句: “Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;Uid=admin;Pwd=pass; ” ⑷、MS SQL Server DSNless 连接: ☆、参数:Driver 设置值:{SQL Server}; ☆、参数:Server 设置值:服务器名称 ☆、参数:Database 设置值:数据表名称 ☆、参数:Uid 设置值:⽤户名称 ☆、参数:Pwd 设置值:密码 ☆、例句: “Driver={SQL Server};Server=servername;Database=dbname;Uid=sa;Pwd=pass; ” ⑸、MS Text Driver DSNless 连接: ☆、参数:Driver 设置值:{Microsoft Text Driver (*.txt; *.csv)} ☆、参数:Dbq 设置值:实际路径⽂件名称 ☆、例句: “Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=c:/somepath/;Extensions=asc,csv,tab,txt;Persist Security Info=False;” ⑹、Visual Foxpro DSNless 连接: ☆、参数:Driver 设置值:{Microsoft Visual FoxPro Driver} ☆、参数:SourceType 设置值:DBC ☆、参数:SourceDB 设置值:实际路径⽂件名称 ☆、例句: “Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=c:/somepath/dbname.dbc;Exclusive=No;” ⑺、MySQL DSNless 连接: ☆、参数:Driver 设置值:{mysql} ☆、参数:database 设置值:数据表名称 ☆、参数:uid 设置值:⽤户名称 ☆、参数:pwd 设置值:密码 ☆、例句: “driver={mysql}; database=yourdatabase;uid=username;pwd=password;option=16386”*******************************************************************SQL语⾔简介 在上⼀讲中我们介绍了连接外部数据库的⽅法,那么连接之后怎样对外部数据库进⾏读取、显⽰、增删、更新、查询等操作呢?这些操作需要通过外部数据库等对象调⽤SQL指令才能完成。

ODBC详解

ODBC详解
wColumnIndex, //列的索引
下面对上述步骤做详细的介绍。
5.2.1步骤1:连接数据源
为了连接数据源,必须要建立一个数据源连接的环境句柄。通过调用SQLAllocEnv函数实现对环境句柄的分配,在ODBC 3.0里,这个函数已经被SQLAllocHandle取代,但是熟悉ODBC API的开发人员还是习惯用这个函数建立环境句柄,因为VC++开发平台有一个映射服务,这个服务将程序代码对函数SQLAllocEnv的调用转向对函数SQLAllocHandle的调用。
通过调用如下代码可以通过应用程序动态创建数据源MYDB:
BOOL CreateDSN()
{
char* szDesc;
int mlen;
szDesc=new char[256];
sprintf(szDesc,"DSN=%s: DESCRIPTION=TOC support source: \
DBQ=%s: FIL=MicrosoftAccess: \
{
//执行其它操作
…………
}
retcode = :: SQLExecute (hstmt, (UCHAR*)pszSQL, SQL_NTS );
if(rcode == SQL_SUCCESS) // SQL语句执行成功
{
//执行其它操作
…………
}
5.2.4步骤4:获取结果集
SQL语句执行成功以后,应用程序必须准备接收数据,应用程序需要把SQL语句执行结果绑定到一个本地缓存变量里。但是SQL执行语句执行的结果并不是直接传送给应用程序,而是在应用程序准备接收数据的时候通知驱动程序其已经准备好接收数据,应用程序通过调用SQLFetch函数返回结果集的一行数据。

ODBC连接字符串全解

ODBC连接字符串全解
USER=myUsername; PASSWORD=myPassword; OPTION=3; "
SQL server
本地数据库
Driver={SQL Server};Database=数据库名;Server=数据库服务器名(localhost);UID=用户名(sa);PWD=用户口令;
注:数据库服务器名(local)表示本地数据库
DNS
DSN
"DSN=myDsn; Uid=username; Pwd=; "
File DSN
"FILEDSN=c:\myData.dsn; Uid=username; Pwd=;"
ODBC连接字符串
DSN=已注册的ODBC数据源名称。如果使用DRIVER关键字,则不用DSN;APP=应用程序名(任选的)
远程数据库
"Driver={SQL Server};Server=130.120.110.001;Address=130.120.110.001,1052;etwork=dbmssocn;
Database=pubs;Uid=sa;Pwd=asdasd;"注:Address参数必须为IP地址,而且必须包括端口号,需指定地址、端口号和网络库;
不带数据库容器
“Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDb=指向.dbf文件的物理路径”
Paradox
“Driver={Microsoft Paradox Driver(*.db)};DBQ=指向.db文件的物理路径;DriverID=26”
本地数据库
"DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost; DATABASE=myDatabase;

数据库连接字符串的处理方法!加密解密连接字符串。

数据库连接字符串的处理方法!加密解密连接字符串。

数据库连接字符串的处理⽅法!加密解密连接字符串。

数据库连接字符串的处理应该是⼀个项⽬⾥最基础的东东了。

(除⾮你的项⽬不涉及到数据库。

)千万不要⼩看他,处理不好也时会给你带来不少的⿇烦的。

连接字符串的内容在这⾥就不讨论了,这⾥主要说⼀下他的存放位置和读取⽅法。

我们要达到的⽬的:⽆论连接字符串如何变化,都不需要修改项⽬!1.把连接字符串写在程序⾥⾯。

⼀般的初级教程⾥会告诉你这么写Dim cn As New SqlClient.SqlConnection("user id=sa;password=sa;server=.;initial catalog=数据库名称")C#SqlClient.SqlConnection cn = new SqlClient.SqlConnection("user id=sa;password=sa;server=.;initial catalog=数据库名称")这么写当然是没有错误,但是当你写了n个页⾯后,有⼀半的页⾯有这样的代码,这时候如果需要改变连接字符串(⽐如换⽤户名和密码)的话,那可就有得你改的了。

想当初我就犯过这样的错误,5555552.放在web.config⾥⾯这是⽐较流⾏的⽅法了。

修改web.config⽂件,加⼊以下代码<APPSETTINGS><ADD value="user id=sa;password=sa;server=.;initial catalog=数据库名称" key="connString" /></APPSETTINGS>然后在需要的地⽅调⽤就可以了。

Dim cnString As String = System.Configuration.ConfigurationSettings.AppSettings.Item("connString")C#string cnString = System.Configuration.ConfigurationSettings.AppSettings["connString"]这样呢就不怕连接字符串再发⽣变化了。

oracle odbc源代码-概述说明以及解释

oracle odbc源代码-概述说明以及解释

oracle odbc源代码-概述说明以及解释1.引言1.1 概述概述在当今信息化时代,对于数据库管理系统的需求日益增加,Oracle数据库作为一款功能强大、性能稳定的关系型数据库管理系统,受到了广泛的应用和青睐。

而ODBC(Open Database Connectivity)作为一种开放式数据库连接标准,为各种数据库管理系统提供了统一的接口,使得不同数据库之间的数据交互变得更加简便和高效。

本文将对Oracle ODBC源代码进行深入分析,探讨其内部实现原理和关键代码逻辑。

通过对源代码的解读和调试,我们可以深入了解Oracle ODBC的工作原理,进一步优化其性能,提升数据库连接和数据交互的效率。

通过本文的阐述,读者将对Oracle ODBC的实现细节有更为深入的了解,为今后的源代码应用和技术展望提供有力支持。

愿本文能帮助读者更好地理解和应用Oracle ODBC,推动数据库管理系统的发展和进步。

1.2 文章结构文章结构部分包括了本文的整体架构和组织方式。

在本文中,我们将首先介绍Oracle ODBC的简介,包括其基本概念和功能特点。

接着我们将进行ODBC源代码的分析,深入探讨其实现原理和关键代码逻辑。

最后,我们将讨论源代码调试与优化的方法,帮助读者更好地理解和应用Oracle ODBC源代码。

通过这些内容的组织安排,我们旨在为读者提供一份全面且深入的Oracle ODBC源代码解读,帮助他们更好地理解和应用该技术。

1.3 目的本文的目的主要有两个方面:首先,通过对Oracle ODBC源代码的分析,深入了解其内部结构与实现原理,从而提升读者对ODBC驱动的理解和掌握。

通过分析源代码,可以了解Oracle ODBC驱动是如何与Oracle数据库进行交互的,以及其在数据库连接、数据查询等方面的具体实现细节,为读者提供深入学习和探讨的基础。

其次,借助本文探讨源代码调试与优化的部分,帮助读者更好地理解调试技巧和优化方法。

连接字符串汇总

连接字符串汇总

(一)常用连接:1.使用SqlConnection对象:public void SqlConnectionOpen(){SqlConnection conn= new SqlConnection();conn.ConnectionString = "user id=sa;password=;initial catalog=northwind;datasource=localhost;c onnect Timeout=20";conn.Open();}2.使用OleDbConnection对象:public void OleDBConnectionOpen(){OleDBConnection conn = new OleDbconnection();conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\Customer.mdb"; conn.Open();}(二) ODBC连接1.ODBC连接Access本地数据库conGoodDay.Open("Driver={Microsoft Access Driver(*.mdb)};"+"Dbq=C:\a.mdb;"+"Uid=Admin;"+"Pwd=;");2.ODBC连接Access系统数据库conGoodDay.Open("Driver={Microsoft Access Driver(*.mdb)};"+"Dbq=C:\a.mdb;"+ "SystemDB=Admin;"+"Pwd=;");3.ODBC连接Access系统数据库conGoodDay.Open("Driver={Microsoft Access Driver(*.mdb)};"+"Dbq=\\server\share\a.mdb;");4.ODBC连接Excel系统数据库conGoodDay.Open("Driver={Microsoft Access Driver(*.xls)};"+"DriverId=790;"+"Dbq=C:\a.xls;"+"DefaultDir=c:\somepath;");5.ODBC连接Oracle系统数据库conGoodDay.Open("Driver={Microsoft ODBC for oracle};"+"Server=OracleServer.world;"+ "Uid=Admin;"+"Pwd=password;");6.ODBC连接Sql ServrconGoodDay.Open("Driver={Sql Server};"+"Server=myServer;"+"Database=myDatabaseName;" "Uid=Admin;"+"Pwd=password;");7.ODBC连接Visual FoxProconGoodDay.Open("Driver={Microsoft Visual FoxPro Driver};"+"SourceType=DBC;"+"SourceDB=c:a.dbc;"+"Exclusive=No;");(三)access连接汇总OLE DB, OleDbConnection (.NET)Standard security:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;User Id=admin;Password =;"With password:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:Database P assword=MyDbPassword;"(四)AccessODBCStandard Security:"Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Uid=Admin;Pwd=;"Workgroup:"Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;SystemDB=C:\mydatabase.mdw;"Exclusive:"Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Exclusive=1;Uid=admin;Pwd="OLE DB, OleDbConnection (.NET)Standard security:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;User Id=admin;Password=;"Workgroup (system database):"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:System Database=system.mdw;"With password:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:Database Password=MyDbPassword;"(五)ODBC Driver for OracleFor the current Oracle ODBC Driver from Microsoft:oConn.Open "Driver={Microsoft ODBC for Oracle};" & _"Server=OracleServer.world;" & _"Uid=myUsername;" & _"Pwd=myPassword;"For the older Oracle ODBC Driver from Microsoft:oConn.Open "Driver={Microsoft ODBC Driver for Oracle};" & _"ConnectString=OracleServer.world;" & _"Uid=myUsername;" & _"Pwd=myPassword;"OLE DB Provider for Oracle (from Microsoft)oConn.Open "Provider=msdaora;" & _"Data Source=MyOracleDB;" & _"User Id=myUsername;" & _"Password=myPassword;"For more information, see: Microsoft OLE DB Provider for Oracle OLE DB Provider for Oracle (from Oracle)For Standard Security:oConn.Open "Provider=OraOLEDB.Oracle;" & _"Data Source=MyOracleDB;" & _"User Id=myUsername;" & _"Password=myPassword;"For a Trusted Connection:oConn.Open "Provider=OraOLEDB.Oracle;" & _"Data Source=MyOracleDB;" & _"User Id=/;" & _"Password=;"' OroConn.Open "Provider=OraOLEDB.Oracle;" & _"Data Source=MyOracleDB;" & _"OSAuthent=1;"。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
独占
"Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb; Exclusive=1; Uid=admin; Pwd="
dBase
"Driver={microsoft dbase driver(*.dbf)};driverid=277;dbq=------------;"
USER=myUsername; PASSWORD=myPassword; OPTION=3; "
SQL server
本地数据库
Driver={SQL Server};Database=数据库名;Server=数据库服务器名(localhost);UID=用户名(sa);PWD=用户口令;
注:数据库服务器名(local)表示本地数据库
“Driver={Microsoft Text Driver(*.txt;*.csv)};DefaultDir=指向.txt文件的物理路径”
Visual FoxPro
带数据库容器
“Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDb=指向.dbc文件的物理路径”
Microsoft Excel
Driver={Microsoft Excel Driver(*.xls)};DBQ=指向.xls文件的物理路径;DriverID=278(97版本:ID=790)
MS text
"Driver={microsoft text driver(*.txt; *.csv)};dbq=-----;extensions=asc,csv,tab,txt;Persist SecurityInfo=false;"
数据源驱动器
ODBC连接字符串
access
标准安全
"Driver={microsoft access driver(*.mdb)};dbq=*.mdb(注释:指向文件的物理路径);
uid=admin(uid=f);pwd=pass(pwd =f);
工作组
"Driver={Microsoft Access Driver (*.mdb)}; Dbq=C:\mydatabase.mdb; SystemDB=C:\mydatabase.mdw; "
oracle
"Driver={microsoft odbc for oracle};server=oraclesever.world(指向服务器的路径);uid=admin;pwd=pass;"
MSSQL
MyODBC 2.50
本地数据库
"Driver={mySQL}; Server=localhost(本地数据库); Option=16834; Database=mydatabase(所请求的缺省数据库(任选项)); "
不带数据库容器
“Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDb=指向.dbf文件的物理路径”
Paradox
“Driver={Microsoft Paradox Driver(*.db)};DBQ=指向.db文件的物理路径;DriverID=26”
本地数据库
"DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost; DATABASE=myDatabase;
USER=myUsername; PASSWORD=myPassword; OPTION=3;"
MyODBC 3.51
远程数据库
"DRIVER={MySQL ODBC 3.51 Driver}; SERVER=; PORT=3306; DATABASE=myDatabase;
远程数据库
"Driver={SQL Server};Server=130.120.110.001;Address=130.120.110.001,1052;Network=dbmssocn;
Database=pubs;Uid=sa;Pwd=asdasd;"注:Address参数必须为IP地址,而且必须包括端口号,需指定地址、端口n; Uid=username; Pwd=; "
File DSN
"FILEDSN=c:\myData.dsn; Uid=username; Pwd=;"
ODBC连接字符串
DSN=已注册的ODBC数据源名称。如果使用DRIVER关键字,则不用DSN;APP=应用程序名(任选的)
UDL连接字符串:"File Name=c:\myDataLink.udl;"
MyODBC 2.50
远程数据库
"Driver={mySQL}; Server=; Port=3306; Option=131072;
Stmt=; Database=my-database; Uid=username; Pwd=password;"
MyODBC 3.51
相关文档
最新文档