oracle自动检测为空
结合我工作中的经验,发现Pl/sql远程连接oracle数据库有以下两种方式:
(文章可能存在不足之处,欢迎大家批评指正。)
方法1介绍:
Step1:安装pl/sql
Step2:安装oracleXEUniv.exe(下载地址:http://how2J.cn)
Step3:运行pl/sql,登录界面—“取消”—选择“工具”菜单—“首选项”命令—设置oracle主目录名(自动检测为空)【这里选择刚才安装oracle目录下的一个“BIN”文件夹的详细路径】;
Step4:OCI库(自动检测为空)—可以自动检测到一个OCI.dll文件的详细路径;
Step5:点击“确定”—点击pl/sql的登录图标(像一把钥匙)—输入用户名、口令 —“确定”。
注释:个人数据库信息 表空间:QINDB 用户名:qin 口令:qin123
公司数据库信息:数据库地址:192.168.0.xx /orcl 用户名:xxxx 口令:xxxx
方法2介绍:(2019-2-12记录)
第一步:安装Oracle客户端,到Oracle网站下载Instant Client :
(根据电脑配置进行选择,32位还是64位)下载地址:http://www.oracle.com/us/solutions/index-097480.html
解压之后的文件夹叫:instantclient_11_2.可以放在本地磁盘任意目录下.例如:D:/instantclient_11_2。
2、在D:/instantclient_11_2目录下新建目录network,在network目录下再建admin目录,在admin目录下新建文件tnsnames.ora,打开写入如下内容:
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.154 )(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl )
)
)
其中ORCL是远程数据库在本地的主机名,10.6.8.10是远程服务器的IP地址,orcl是远程数据库的名称。
3、添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径。
通过(我的电脑–属性–高级–环境变量–新建)来新增环境变量。
第二步:下载并安装PL.SQL.Developer,配置应用
配置tools->preferences->connection
Oracle Home D:\Oracle_client\instantclient_11_2
OCI library D:\Oracle_client\instantclient_11_2\oci.dll
配置完成后关闭PL/SQL ,再重启.
主机名就会出现在PL/SQL Developer的列表里,输入用户名密码,就可以登录远程oracle 数据库。
当我们连接成功后有时候查询出来的数据会出现乱码的问题,这是因为本地的编码和服务器端编码不一致,这时候我们可以通过SQL语句:
select userenv(‘language’) from dual;
查询出服务器端的编码,如我自己的查询结果为
USERENV(‘LANGUAGE’)
AMERICAN_AMERICA.ZHS16GBK
我们就需要添加一个环境变量NLS_LANG ,值为: AMERICAN_AMERICA.ZHS16GBK 然后重启PL/SQL就不会再有乱码问题了。