一. 首先确认你的linux是否设置了支持中文

cat /etc/sysconfig/i18n

其中:

LANG 变量是 language 的简称, 这个变量时决定系统的默认语言, 即系统菜单, 程序的工具栏语言, 输入法默认语言等.

SUPPORTED 变量是 决定系统支持的语言, 即系统能够显示的语言.

SYSFONT 变量是默认的系统字体.

其中 将LANG=“en_US.UTF-8”也是可以显示中文的.

二. 将 securCRT 中设置, 外观-> 字符编码设置成UTF-8 就可以输入中文了. (这部对于secuCRT显示中文是重要的, 上边的1主要是确认当前系统的语言系)

三. oracle 查询的结构, 显示的是问号 ?

虽然现在可以输入中文了, 也可以在 securCRT 的sqlplus下输入中文, 将data保存, 但是当你要显示的时候, 查询出来的却是问号, 但是当你指定 where name=”你好” 时, 数据库能够针对这个条件显示出1行数据, 注意只是1行, 说明查询条件起作用了, 只是显示的问题.

1. 什么是字符集

影响 oracle 数据库字符集最重要的参数是NLS_LANG 参数, 它的格式为:

NLS_LANG=languare_territory.charset 它由三部分组成(语言, 地域和字符集), 其中:

language 指定服务器消息语言,

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

charset 指定字符集

例如 AMERICAN_AMERICA.ZHS16GBK

从NLS_LANG 的组成我们可以看出, 真正影响数据库字符集的其实是第三部分, 所以两个数据库之间的字符集只要第三部分一样就可以相互导入导出数据, 前面影响的只是提示信息.

2. 如何查询 oracle 的字符集

查询 server 端的字符集 : select userenv('language') from dual; -- 结果类似 AMERICAN_AMERICA.ZHS16GBK

查询 dmp 字符集(为了数据库之间的迁移) select nls_charset_name(to_number('0354','xxxx')) from dual; -- 结果类似 ZHS16GBK

查询 client 端字符集 : 在 windows 平台下, 就是注册表里相应 oracle home 的 NLS_LANG, 也可以在dos 里自己设置 set nls_lang=AMERICAN_AMERICA.ZHS16GBK, 这样就只影响这个窗口的环境变量.

在 unix 平台下, echo $NLS_LANG 可以看到字符集, 如果发现client 和 server 端字符集不一样, 就同意修改成 server 端字符集

3. 修改字符集

字符集的转换时从子集到超集受支持. 如果两个字符集根本没有子集和超集的关系, 那么字符集的转换不受 oracle 支持. 另外不建议修改 oracle server 端的字符集.

有3个字符集

1. client 本身系统字符集

2. NLS_LANG 这个应用字符集 ( 比如你在客户端调用了 sqlplus , 那么这个应用会参考这个参数 )

3. server 端字符集

如果出现乱码, 解决方法是:

server 端字符集本身就是 AL32UTF8

将 NLS_LANG 字符集设置成 AL32UTF8 (如果不设置这个参数, 那么这个参数默认就是跟server 端相同的字符集)

将 client本身字符集, 例如 unix 平台的 LANG 设置成 AL32UTF8 或者 AL32UTF8 的子集, 就可以解决乱码问题

在 SG 对应章节, 有子集和超集对应关系表

步骤可以归纳为:1.找到操作系统使用的字符集,并按上表找到对应的字符集名称。2.修改客户端软件的字符集NLS_LANG环境变量设置

SecurCRT 远程linux 输入中文及 oracle 查询出文号问题的更多相关文章

  1. oracle查询出的字段加引号

    SELECT 'list.add("' || t.dummy || '");' as listFROM dual t where rownum < 600; 执行结果: SE ...

  2. Oracle查询出最最近一次的一条记录

    需求:从一个表中查询数据,得到的数据为最新的一条记录. -------------建立测试表 --drop table TB ),dtDate date) -------------插入测试数据 ,' ...

  3. linux shell脚本连接oracle查询数据插入文件和日志文件中

    #!/bin/sh sqlplus "用户名/密码@数据库"<<EOF  或者只有一个库的 :sqlplus "用户名/密码"<<EOF ...

  4. mysql和oracle查询出的一条结果中的多个字段拼接

    1,mysql concat('a','b','c')和concat_ws('a','b','c')的区别:前者如果有某个值为空,结果为空;后者如果有某个值为空,可以忽略这个控制 SELECT con ...

  5. SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 和oracle 查询数据中文乱码问题

    一.SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 linux 设置系统语言 修改 /etc/sysconfig/i18n 文件,如 LANG="en_ ...

  6. oracle查询中文数据出现乱码

    首先,在oracle中,输入select userenv('language') from dual,查询出oracle使用的编码方式,我的是SIMPLIFIED CHINESE_CHINA.ZHS1 ...

  7. linux下QtCreator无法输入中文的情况

    解决linux下QtCreator无法输入中文的情况 本文由乌合之众 lym瞎编,欢迎转载 blog.cnblogs.net/oloroso 本文由乌合之众 lym瞎编,欢迎转载 my.oschina ...

  8. 解决Qt程序在Linux下无法输入中文的办法

    解决Qt程序在Linux下无法输入中文的办法 一位网友问我怎样在Linux的Qt的应用程序中输入中文,我一開始认为不是什么问题,可是后面自己尝试了一下还真不行.不仅是Qt制作的应用程序,就连Qt Cr ...

  9. Kali Linux安装中文输入法全纪录

    前言: 我使用的是英文版的Kali,默认没有安装中文输入法,也没有安装小企鹅(我后来才知道),折腾了很久,现在终于可以在Kali里输入中文了(这篇文章就是在Kali里面用leafpad写的).安装的过 ...

随机推荐

  1. 网络采集软件核心技术剖析系列(6)---将任意博主的全部博文下载到SQLite数据库中并通过Webbrower显示(将之前的内容综合到一起)

    一 本系列随笔目录及本节代码下载 自己开发的豆约翰博客备份专家软件工具问世3年多以来,深受广大博客写作和阅读爱好者的喜爱.同时也不乏一些技术爱好者咨询我,这个软件里面各种实用的功能是如何实现的. 该软 ...

  2. [Bug]转:使用jquery的 uploadify,在谷歌浏览器上总会崩溃的解决方法

    最近做的项目使用了jquery的uploadify,但是在谷歌浏览器测试总是会出现崩溃.如: 因为是java项目. 解决的办法是: 给引入的js加上一个参数,时间戳就可以,防止缓存,使每一次都请求.( ...

  3. 轻松加愉快的 Kubernetes 安装教程

    轻松加愉快的 Kubernetes 安装教程 马哥Linux运维 2 days ago 作者:无聊的学习者 来源:见文末 在国内安装 K8S,一直是大家很头痛的问题,各种麻烦,关键是还不知道需要下载什 ...

  4. phpmyadmin后台4种拿shell方法 && php爆路径大法

    php后台拿shell要知道php的路径,文章下面将讲诉爆php路径的方法!!! 方法一: CREATE TABLE `mysql`.`xss` (`xss1` TEXT NOT NULL ); IN ...

  5. fedora25 采用二进制包安装mysql5.5.49

    #添加用户和组 groupadd mysql useradd -s /sbin/nologin -g mysql -M mysql /etc/passwd id mysql #安装依赖包 [root@ ...

  6. Fedora 修改时区、日期、时间

    # tzselect 修改时间命令 [root@comput1 ~]# tzselectPlease identify a location so that time zone rules can b ...

  7. javascript快速入门17--事件

    事件(上) JavaScript事件列表 事件 解说 一般事件 onclick 鼠标点击时触发此事件 ondblclick 鼠标双击时触发此事件 onmousedown 按下鼠标时触发此事件 onmo ...

  8. javascript快速入门15--节点

    节点类型 DOM定义了Node的接口以及许多种节点类型来表示节点的多个方面! Document——最顶层的节点,所有的其他节点都是附属于它的. DocumentType——DTD引用(使用<!D ...

  9. 最简单的PHP socket

    服务端 <?phperror_reporting(E_ALL);set_time_limit(0); $ip = "127.0.0.1";$port = 1935; func ...

  10. Jacoco覆盖率工具使用之maven篇

    说明 之前的文章已经介绍过如何使用apacheant 执行jacoco工具,下面开始介绍如何使用maven使用jacoco工具. 1.首先新建一个maven项目       如图所示:        ...