连接到Oracle数据库连接方式有几种的几种命名方式

据我所知,使用jdbc连接上oracle有两种方法:
1、 使用thin连接
由于thin驱动都是纯Java代码,并且使用TCP/IP技术通过java的Socket连接上Oracle数据库,所以thin驱动是与平台无关的,你无需安装Oracle客户端,只需要下载一个thin驱动的jar包,并且将环境变量中的CLASS_PATH变量中加入thin驱动的路径就可以了。Thin驱动虽然与平台无关,也无需安装Oracle客户端,但是有一个致命的缺陷就是性能一般,达不到如OCI方式的企业级的要求。另外,如果一个oracle数据库对应一台主机,可以使用thin连接;如果一个oracle数据库对应四五台主机(集群服务器),使用thin时,需要把tnsnames.ora文件中的相关数据库的整个连接字符串都拷贝下来,如此才能连接上oracle集群数据库。而这种方法也是和数位同事讨论并Google了大量资料后才发现的。之前我一直以为thin不支持集群数据库的方式。
然后就是设置连接字符串了。这个是固定的写法,如下所示:
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn =DriverManager.getConnection ("jdbc:oracle:thin:@10.87.134.107:1521:ora9","sms" , "zzsms");
在上面的连接字符串中,如果不是集群数据库就在@后直接输入数据库IP地址即可;如果是集群数据库,则需要在@后输入tnsnames.ora文件中有关该数据库的所有描述内容(通常是=后边的所有的内容)。
2、 使用oci连接(Oracle Call Interface)
使用OCI连接数据库是企业级的做法,适应于单个数据库和集群数据库,性能优越,尤其是连接池功能大大提高了应用程序的性能和并发量。唯一的缺点是,若想使用OCI必须要安装Oracle客户端。
安装完Oracle客户端后,里面有个jdbc的文件夹,该文件夹下就包含了OCI驱动和THIN驱动。所以是不需要去网上下载的。这个驱动在jdbc/lib文件夹下,主要有classes12.jar、nls_charset12.jar等等。其中以12结尾的驱动包适应于jdk1.1以上的版本。以11结尾的适应于jdk1.1以下的版本。文件名中含有classes的jar包就是驱动程序,文件名中含有nls的jar包是与国际化有关的类。
找到文件后,就需要把class和nls的jar包的绝对路径加入CLASS_PATH环境变量,否则会报ClassNotFound的异常。
设置环境变量后,就可以直接使用OCI驱动了,不要被&驱动&两个字吓坏了,(驱动就是一个可执行文件和一个连接字符串)。很简单,无非是连接字符串的问题。标准的连接字符串如下所示:
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:oci:@xxzc","duansiyuan", "oracle_password");
只要这两行,就可以保证连接到数据库,而这个数据库不管是单个数据库还是集群数据库。其中xxzc就是数据库名,duansiyuan就是用户名,oralce_password就是密码。这种方式和C#中的方式比较类似。
需要注意的问题:
1、oracle_home/jdbc文件夹下有大量的样板代码和帮助文档,里面对如何安装和使用jdbc都有详细的说明,请引起高度重视并耐心阅读。里面有很多知识仅通过自己反复的实践是无法获取的。
2、如果想要高性能,请使用OCI连接,如果不想装Oracle客户端,请使用thin连接。
阅读(...) 评论()> 问题详情
Oracle数据库中,在SQL语句中连接字符串的方法是哪个?
悬赏:0&答案豆
发布时间:
Oracle数据库中,在SQL语句中连接字符串的方法是哪个?
您可能感兴趣的试题
1Oracle数据库表空间与用户的关系是什么?2不能在不同用户之间共享数据的方法是什么?3Servlet程序的入口点是?4在DHTML中把整个文档的各个元素作为对象处理的技术是什么?
我有更好的答案
<a href="//www.shangxueba.com/ask/9336110.html" target="_blank" title="当n=5时,下列函数的返回值是:()。[cpp] view plaincopyint foo(int n){if(n当n=5时,下列函数的返回值是:()。[cpp] view plaincopyint foo(int n){if(n<2)retu
请先输入下方的验证码查看最佳答案
图形验证:
验证码提交中……
每天只需0.4元
选择支付方式
支付宝付款
郑重提醒:支付后,系统自动为您完成注册
请使用微信扫码支付(元)
支付后,系统自动为您完成注册
遇到问题请联系在线客服QQ:
恭喜你被选中为
扫一扫-免费查看答案!
请您不要关闭此页面,支付完成后点击支付完成按钮
遇到问题请联系在线客服QQ:
恭喜您!升级VIP会员成功
提示:请截图保存您的账号信息,以方便日后登录使用。
常用邮箱:
用于找回密码
确认密码:SQLPlus在连接时通常有四种方式
SQLPlus在连接时通常有四种方式
sqlplus / as sysdba
& & 操作认证,不需要服务器启动listener,也不需要数据库服务器处于可用状态。比如我们想要启动数据库就可以用这种方式进入
& & sqlplus,然后通过startup命令来启动。
sqlplus username/password
& & 连接本机数据库,不需要数据库服务器的listener进程,但是由于需要用户名密码的认证,因此需要数据库服务器处于可用状态才行。
sqlplus usernaem/password@orcl
& & 通过网络连接,这是需要数据库服务器的listener处于监听状态。此时建立一个连接的大致步骤如下 
  a. 查询sqlnet.ora,看看名称的解析方式,默认是TNSNAME  
  b. 查询tnsnames.ora文件,从里边找orcl的记录,并且找到数据库服务器的主机名或者IP,端口和service_name  
  c. 如果服务器listener进程没有问题的话,建立与listener进程的连接。  
  d. 根据不同的服务器模式如专用服务器模式或者共享服务器模式,listener采取接下去的动作。默认是专用服务器模式,没有问题的话客户端
& & & & & & 就连接上了数据库的server process。
  e. 这时连接已经建立,可以操作数据库了。
sqlplus username/password@//host:port/sid
  用sqlplus远程连接oracle命令(例:
sqlplus risenet/1@//192.168.130.99:1521/risenet格式一: Oracle JDBC Thin using a Service_Name:
jdbc:oracle:thin:@//192.168.6.66:1521/rac
(数据库的服务名Service_name:rac)
格式二: Oracle JDBC Thin using an SID:
jdbc:oracle:thin:@192.168.6.66:1521:rac1
(数据库的实例名SID:rac1)
格式三:Oracle JDBC Thin using
(一般在连接oracle RAC使用)jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.66)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=rac)(INSTANCE_NAME=rac1)))或者 jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.66)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.68)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=rac)))或者 jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.66)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.68)(PORT=1521))(FAILOVER=on)(LOAD_BALANCE=on))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=rac)))注意:使用SID和SERVICE_NAME方式的区别"/" 与 ":"很多人没有注意.
jdbc连接oracle、mysql等主流数据库的驱动类和url
jdbc连接各类数据库
JAVA连接oracle数据库的三种方式
1 传统方式连接数据库(效率较低)
此方法连接数据库,其性能、可靠性与稳定性随着用户访问量的增加逐渐下降,跟踪测试表明,其根本问题与Connection对象的创建有关。不过在这里还是讲一下...
Java连接Oracle数据库的三种连接方式
背景:这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询。SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQL、...
JDBC连接oracle数据库的基本步骤
0、基础:创建java项目,导入jdbc的jar包。jdbc jar包下载传送门:https://download.csdn.net/download/weixin_31997...
使用jdbc连接oracle数据库
使用jdbc连接oracle数据库Java类:
import java.sql.*;
public class DBHelper {
public static String url = &jd...
*版权证明: 只允许上传png/jpeg/jpg/gif格式的图片,且小于3M
*详细原因:
交 &em&jdbc&/em&连接&em&oracle数据库&/em& 3积分 立即下载 ...
&em&oracle数据库&/em&jar包,oracle连接数据库&em&jdbc&/em&,希望下载的网友们能手实用。... &em&oracle数据库&/em&jar包,oracle连接数据库&em&jdbc&/em&,希望下载的网友们能手实用。综合评分:0 收藏评论举报...
import java.sql.Cimport java.sql.DriverMimport java.sql.ResultSimpo...
import java.sql.Cimport java.sql.DriverMimport java.sql.PreparedSimport ja...
如何利用JDBC连接并操作Oracle数据库
之前学习.NET的时候,曾经利用ODBC进行连接数据库,而在Java中通常采用JDBC连接数据库,这里以oracle数据库为例简单的总结一下利用JDBC如何连接并操作数据库。
没有更多推荐了,请在APP上操作
打开万方数据APP,点击右上角"扫一扫",扫描二维码即可将您登录的个人账号与机构账号绑定,绑定后您可在APP上享有机构权限,如需更换机构账号,可到个人中心解绑。
检索详情页
{"words":"$head_words:VC\\+\\++$head_words:Oracle数据库开发+$head_words:ADO+$head_words:OCI+$head_words:Pro\\*C","themeword":"$head_words","params":"$title:VC\\+\\+中连接Oracle数据库的几种方法"}
&&&VC++中连接Oracle数据库的几种方法
VC++中连接Oracle数据库的几种方法
Methods of Connecting to Oracle Database in VC++
介绍了VC++平台下连接Oracle数据库的几种主要方法,同时给出了具体的使用步骤和示例.对这几种方法的特点进行了分析,比较了它们的优点和应用范围.
摘要: 介绍了VC++平台下连接Oracle数据库的几种主要方法,同时给出了具体的使用步骤和示例.对这几种方法的特点进行了分析,比较了它们的优点和应用范围.&&
相关论文(与本文研究主题相同或者相近的论文)
同项目论文(和本文同属于一个基金项目成果的论文)
您可以为文献添加知识标签,方便您在书案中进行分类、查找、关联
请输入添加的标签
万方数据知识服务平台--国家科技支撑计划资助项目(编号:2006BAH03B01)
&北京万方数据股份有限公司 万方数据电子出版社
实名学术社交
个性化订阅推荐
快速查看收藏过的文献}

我要回帖

更多关于 几种数据库连接方式优缺点比较 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信