如何配置oracle client 和 plsql developer




1. 下载oracle的客户端程序包(30M)
       只需要在 Oracle 下载一个叫 Instant Client Package 的软件就可以了,这个软件不需要安装,只要解压就可以用了,很方便,就算重装了系统还是可以用的。
       下载地址: http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html
解压到一个目录中即可,例如c:\oracleclient

2. 配置操作系统环境变量
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
TNS_ADMIN=C:\oracleclient

3. 配置连接Oracle的配置。tnsnames.ora文件到目录C:\oracleclient。可以从oracle服务器拷贝一个过来。
内容类似:

# tnsnames.ora Network Configuration File: E:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

ORCLProduct =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = prmpatm1.asiapacific.hpqcorp.net)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

ORCL122 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 16.157.133.122)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

4. 安装PLSQL Developer

5. 配置PLSQL Developer(第一次可以不用登录直接进到PLSQL Developer)
Tools --> Preferences--> Connections,
Oracle Home内容为 C:\oracleclient
OCI library内容为 C:\oracleclient\oci.dll

重新启动PLSQLDeveloper
完毕



今天又遇到了从sql plus insert 中文的问题,主要还是nls_lang的设置,总结一下。

    首先要明确什么是字符集?字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包括关系,如us7ascii就是zhs16gbk的子集, 从us7ascii到zhs16gbk不会有数据解释上的问题,不会有数据丢失,Oracle对这种问题也要求从子集到超集的导出受支持,反之不行。在所 有的字符集中utf8应该是最大,因为它基于unicode,双字节保存字符(也因此在存储空间上占用更多)。


    其次,一旦数据库创建后,数据库的字符集是不能改变的。因此,在设计和安装之初考虑使用哪一种字符集是十分重要的。数据库字符集应该是操作系统本地字符集的一个超集。存取数据库的客户使用的字符集将决定选择哪一个超集,即数据库字符集应该是所有客户字符集的超集。

现在,介绍一些与字符集有关的NLS_LANG参数,


NLS_LANG格式:


NLS_LANG = language_territory.charset


有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。其中:language 指定服务器消息的语言。


territory 指定服务器的日期和数字格式。


charset 指定字符集


例如:


AMERICAN_AMERICA.US7SCII


AMERICAN _ AMERICA. ZHS16GBK




还有一些子集可以更明确定义NLS_LANG参数:


DICT.BASE 数据字典基本 表版本


DBTIMEZONE 数据库时区


NLS_LANGUAGE 语言


NLS_TERRITORY 地域


NLS_CURRENCY 本地货币字符


NLS_ISO_CURRENCY ISO货币字符


NLS_NUMERIC_CHARACTERS 小数字符和组 分隔开


NLS_CHARACTERSET 字符集


NLS_CALENDAR 日历系统


NLS_DATE_FORMAT 缺省的日期格式


NLS_DATE_LANGUAGE 缺省的日期语言


NLS_SORT 字符排序序列


NLS_TIME_FORMAT 时间格式


NLS_TIMESTAMP_FORMAT 时间戳格式


……

查看可选的数据库字符集:

col nls_charset_id for 99999

col nls_charset_name for a35

col hex_id for a5

select nls_charset_id(value) nls_charset_id,value nls_charset_name,to_char(nls_charset_id     (value),'xxxx') hex_id

from v$nls_valid_values

where parameter = 'CHARACTERSET';

查看当前数据库字符集配置:

col parameter for a35

col value for a35

select * from v$nls_parameters;

或者:

select * from sys.props$;



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值