odbc数据源 odbc数据源配置access怎么配置呢
|ODBC(Open Database Connectivity,开放数据库互连)是 微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API( 应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。
一组数据的位置,可以使用 ODBC 驱动程序访问该位置。
一个基于ODBC的 应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是 Oracle数据库,均可用ODBC API进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。
特点:
ODBC技术以C\S结构为设计基础,它使得应用程序与DBMS之间在逻辑上可以分离,使得应用程序具有数据库无关性。ODBC定义了一个API,每个应用程序利用相同的 源代码就可以访问不同的 数据库系统,存取多个数据库中的数据。与嵌入式SQL相比,ODBC一个最显著的优点是用它生成的应用程序与数据库或数据库引擎无关。
ODBC使应用程序具有良好的互用性和可移植性,并且具备同时访问多种DBS的能力,从而克服了 传统数据库应用程序的缺陷。
1.敲完学生和机房后,只知道配置ODBC数据源是为了连接vb与SQL 实现vb与数据库的完美交互,那么为什么要配置ODBC那:
主要是方便管理
1 你肯定要链接数据库
2 那么你肯定要用户名和密码
3 正式的数据库和应用服务器应该是单独的人员管理,而不是开发人员
4 密码会定期修改
5 如果链接数据库是各自书写代码和配置,则运行环境的密码修改将会是一个噩梦,一不小心就忘记一个
6 所以,大家全部到一个数据源那里获取连接。管理员只需要修改数据源的配置,而无需修改应用的配置
7 如果数据库的地址变更,则同样不会影响到应用,也只是修改数据源
8 开发人员无需知道正式数据库的密码
2.名词解释即用途
ODBC即OPEN DATABASE CONNECITON的缩写,意为开放数据库连接,是微软提出的一种数据访问的方法,只要数据库提供了ODBC驱动程序,应用程序就能以ODBC的方式访问数据库中的数据。
为了便于访问数据,WINDOWS系统提供了ODBC数据源管理工具,该工具用来设置数据源的名字
DSN(DATA SOURCE NAME)。所谓DSN只不过是一个数据源的标志,设置它的目的是便于应用程序访问数据,也就是说,只要为某个数据库设置了相应的DSN,应用程序就不必理会该数据库存储的位置和驱动程序,可以按DSN直接访问数据库。
DSN有三种类型:用户DSN、系统DSN和文件DSN,下面分别讲述这三种DSN。
用户DSN 用户DSN只对设置它的用户可见,而且只能在设置了该DSN的机器上使用。
系统DSN 系统DSN对机器上的所用户都是可见的,包括NT服务。文件DSN 将DSN的配置信息存在一个文件里,这样的文件就叫文件DSN。
ODBC数据源全称是开放数据库互连(Open Database Connectivity),在微软公司开放的数据库结构中的一部分,其实是一个应用程序的接口,主要用于提供数据库的编写应用程序的能力。
因为是微软公司发布的软件,ODBC也提供了SQL语句的支持,用户可以通过ODBC提供的API接口来使用和调度ODBC驱动程序,然后ODBC驱动程序通过SQL语言与数据库管理系统进行联系。
ODBC数据源在每台计算机中基本都存在,以WindowsXP为例,打开控制面板—系统工具—数据源 (ODBC),很见到可以找到。双击打开ODBC数据源管理器,该管理器主要用于配置、添加、删除各种不同的数据源,ODBC数据源对此专门进行了简洁化,可以让用户更加方便的进行数据源的配置。
下面介绍一下ODBC数据源管理器的主要功能:
1、用户DSN:ODBC用户数据源存储了如何与指定数据提供者连接的信息。用户数据源只对当前的用户可见,而且只能应用在本机上。
2、系统DSN:ODBC系统数据源存储了如何与指定数据提供者连接的信息。系统数据源对当前机器上的所有用户可见。
3、文件DSN:ODBC文件数据源允许用户连接数据提供者。文件DSN可以由安装了相同驱动程序的用户共享。
4、驱动程序:ODBC驱动程序允许那些支持ODBC的程序通过ODBC数据源获取信息。如果安装新的驱动程序,要使用其安装程序。
5、跟踪:ODBC跟踪允许创建调用ODBC驱动程序的日志,以供技术人员查看;也可以辅助调试应用程序。Visual Studio跟踪启动Microsoft Visual Studio的ODBC跟踪。QTP要进行数据库检查点之前,需要先连接数据库:
1.在控制面板-管理工具-数据源(ODBC)创建数据源。(windows要先安装相应的odbc驱动包)
2.在qtp中创建连接。
'定义一个变量
Dim Cnn
'创建一个ADODB对象,赋值给这个变量
Set Cnn =CreateObject("ADODB.Connection")
'连接指定的数据库,用户名密码和数据源名称(Data Source就是步骤一创建的数据源名称)根据实际环境填写
Cnn.ConnectionString="Provider=OraOLEDB.Oracle.1;Persist Security Info=False;UserID=mibs;Password=mibs;Data Source=mibs71" ' oracle
Cnn.ConnectionString="Provider=MSDASQL.1;Password=db2inst1;Persist Security Info=True;User ID=db2inst1;Data Source=39_xbankred" ' db2
这次的主题就是上面的这个连接字符串,我为了找到这个连接字符串,发费了我半天时间,后来找到了一个很好的方法,就是让它自动生成连接字符串,这样就不怕因为数据库的不同,连接字符串也不同了。方法如下:
1.新建一个文件,取名a.udl,后瑞是udl就行
2.双击打开该文件,弹出如下图
3.选择数据源名称,输入数据库用户和密码,点击确定按钮,就自动生成连接字符串了。
或者你如果没有事先建立数据源的话,也可以从【提供程序】开始,然后一步一步的按提示信息进行操作,最后测试一下是否能连接成功,然后点击确定按钮,就自动生成了。
这样做的好处就是,效率高,而且一定能连接成功。并且适合各种数据库的连接。
大概思路:词语法分析生成语法树、逻辑优化、物理优化、计划执行,其中 ast 使用Antlr
请问:
1、方向是否正确,有没有更简易的方法或者可以省略的步骤。
2、有没有 gammar 文件供参考?
3、逻辑优化 有没有好的规则比较适用 ?
4、统计信息、代价评估、Plan的生成分别有哪些算法呢?
4、Plan的执行控制该怎么做,这一块的思路还是不清晰。作者:知乎用户
链接:https://www.zhihu.com/question/26953411/answer/34681295
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。在几年以前(哥年龄35+),我还在问老头子什么叫“定语从句”,被鄙视。
老婆学日语的,每当我嘲笑她英语稀烂,她就考我英语语法,然后我只好嘲笑她Excel很烂了。
但这不影响我读英文文档,也不影响我应聘某名声还算过得去的外企PM岗位,他们也没有发现我的英语实际上很“烂”并且把我fire掉。
怎么做到的?我准备把答案写长点骗赞。这是一个如何依靠自学掌握计算机英语应用能力的故事……不想看故事的,直接跳至答案尾部。
我父亲是英语教师,这是我从小学不好英语的第一个原因。起因是初一时他闲得无聊,检查我的英语学习情况,单词orange我总是拼不对(天啊现在也没拼对),然后就被实施家暴了,从此我拒绝他检查或者辅导我的英语学习。
但是,我有一个好的英语启蒙教师——初一的英语老师姓周,我对他感激涕零,他对教学投入和认真,对每一个学生都很用心,激发了我们学英语的兴趣,并且教会了我学习英语的核心技能——国际音标,除了26个字母以外,这是我学的最扎实的英语知识了,这使我在查词典后可以知道一个单词可以怎么读。我不止一次地设想过,如果初中一年级不是周老师教我英语,给了我学习计算机的最重要的工具,我的人生就会完全不同,称得上是师恩如海。
我始终认为——学习英语最重要的是能开口读,读错了也不要紧。读句子有困难,那就从单词开始。
现在的电子词典、在线词典都有真人语音可以跟着模仿,模仿的时候总结一下发音规律,在遇到新的单词的时候先猜一猜它的读音,再查词典核实自己的猜测。
有了这个方法,长期积累,读不成问题了。
初二的时候,换了一个美女老师。我不喜欢她的原因是她上课很无趣,现在想想大约是因为她没有经常表扬我,而且她讲课的重点是语法,教学方法是不停重复,给我留下语法恐惧症。值得一提的是,初二的数学老师也不怎么喜欢我。
一个不被老师表扬的学生是没有未来的,学校里的课程很无聊可是我还得天天去,总要给自己找点事做吧。这时我拿到一个CASIO计算器,型号是fx-3600,它有很多按钮所以看上去很厉害的样子,还有一本薄薄的说明书(英语+日语)。
为了使自习时间不那么无聊,我天天玩这个计算器,很快就玩腻了,因为高级的功能不会用。我决定把说明书看懂。对于一个学习英语一年左右的初中生来说,这样的“专业文献”自然是很难读懂的,没关系,时间我有的是。
一个笨办法如果有效,那它就是个好办法。
我的笨办法就把说明书上的英文工整地抄写在数学练习本上,然后用英汉词典查每一个单词的意思,试着把它翻译出来。实在翻译不出来的,对照日文版部分的汉字猜。渐渐地,查词典的频率没有那么高了,因为这些词之前都查过并且记住了,比如calculator,不需要再查了。
解压上面两个包,把解压后的文件放在同一个目录(合并),注意2个包解压后的所有文件必须放在一个目录下,假设是D:\\instantclient_11_2
使用管理员权限打开CMD,进入该目录,运行odbc_install.exe进行安装。
提示安装成功后,运行64位ODBC驱动配置程序“C:\windows\SysWOW64\odbcad32.exe”
注意:64位系统的odbcad32.exe的目录应该在SysWOW64。
不出意外,ODBC的驱动已经安装成功了,打开ODBC数据源管理器就可以看到已经有ODBC驱动程序项:
3.选择ODBC配置DSN,如下图,可以根据实际的情况天下Oracle ODBC Driver Configuration。
测试连接成功后,就可以使用ODBC连接数据库了,Enjoy it!
加一句,我使用的ADO来封住ODBC连接。ODBC连接串测试成功和能够使用的是:Provider=MSDASQL.1;Persist Security Info=False;User ID=avls;Password=1;Data Source=orcl;
还有发一个Oracle ODBC连接串汇总:http://www.connectionstrings.com/oracle/ 那么多人贡献真好!
再说一句:配置Oracle ODBC驱动必须需要配置环境变量,就是让驱动能够找到D:\instantclient_11_2\NETWORK\ADMIN 下面的tnsnames.ora tnsnames.ora文件包含了连接Oracle服务器的连接串;
只需要配置ORACLE_HOME环境变量的值为D:\instantclient_11_2即可。已经经过测试,嘻嘻。谢谢,不用夸奖,有用得很。
关于环境变量,还有一个需要进行配置的就是ODBC驱动的语言设置,NLS_LANG:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 目前测试可以解决SQL通过ODBC查询中文乱码的问题。
0 Comments.