`
panqili2120
  • 浏览: 88971 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

sqlplus导入SQL出现乱码

阅读更多

问题描述:用a.sql文件执行insert,不论是通过pl/sql还是sqlplus @文件名都是中文数据出现乱码。

绝大多数情况是环境变量NLS_LANG的值和数据库字符集不一致导致。

  查看环境变量 echo $NLS_LANG

  查看数据库字符集 select userenv('language') from dual;

如果二者不一致,修改其一使二者一致。

建议修改NLS_LANG,方便、简单、安全

修改NLS_LNAG,有两种方式

1,临时修改 在当前登录终端执行export NLS_LANG=XX (XX:表示数据库字符集)

       本地登录退出后失效

2,永久修改 修改.bash_profile,在文件中加入export NLS_LANG=XX (XX:表示数据库字符集)

     重新登录后永久生效

如果在设置环境变量的时候出现“XX: not a valid identifier”,检查XX中是否有空格,如果有空格要将XX用双引号包括。例如:export NLS_LANG=“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”

 

以上内容选自http://szh-java.iteye.com/blog/1869360

-------------------------------------------------------------------------------------------------------------------------------------解决方案

 

1. 登录: sqlplu 用户名/密码@数据库

2. export NLS_LANG= AMERICAN_AMERICA.ZHS16GBK

3. 执行@文件名

 

sql>@c:\test.sql

分享到:
评论

相关推荐

    oracle 使用sqlplus导入大sql文件(实战)

    oracle 使用sqlplus导入大sql文件,需熟悉linux命令,批量导入sql文件以及导入乱码解决方案

    Oracle导出成csv格式后显示乱码的解决方法

    因此,当编码不匹配时,就会出现乱码。 2. **使用记事本打开并重新保存**: 第一步是使用记事本打开CSV文件。记事本是一个简单的文本编辑器,它允许查看原始字符编码。打开文件后,如果中文已经正常显示,说明文件...

    oracleimp导入中文乱码实用.pdf

    在Oracle数据库管理中,遇到导入数据时出现中文乱码的问题,通常与字符集设置有关。此问题中的情况是,从一个使用ZHS16GBK字符集的源数据库导出的数据在导入到使用WE8ISO8859P1字符集的目标数据库时出现了乱码。这是...

    Linux上Oracle安装前汉字乱码和安装后创建数据库乱码的解决方法(含附件)

    5. **备份与恢复**: 如果已经存在乱码数据,考虑使用`EXPDP`导出数据,然后在新字符集中使用`IMPDP`导入。注意,这可能会导致数据丢失或变形,因此在操作前务必做好充分的数据备份。 通过以上步骤,你应该能够解决...

    plsql导出数据到excel的三种方法

    ### PL/SQL 导出数据至 Excel 的三种方法详解 #### 方法一:直接导出(适用于少量数据) 此方法较为直观简单,适用...此外,需要注意的是,在处理含有中文字符的数据时,需要特别关注编码问题,以避免出现乱码情况。

    修改Oracle字符集(character set)

    不过,使用`internal_use`可能会导致乱码问题,或者某些表中的数据无法读取。 8. **再次关闭数据库**: ```sql sql> shutdown immediate ``` 9. **重启数据库**: ```sql sql> startup ``` 10. **检查新的...

    客户端软件

    4. **导入注册表信息**:创建一个注册表文件,包含Oracle客户端的相关配置,然后导入到系统注册表,以确保系统能够识别Oracle Home。 5. **创建tnsnames.ora文件**:这是Oracle网络配置文件,定义了数据库连接的...

    orcale笔记

    在PL/SQL开发环境中,可能遇到中文乱码问题。解决方法是设置`NLS_LANG`环境变量,或者在PL/SQL Developer等工具中设置适当的字符集。 对于数据库中的对象,如表、视图和索引,可以使用SQL命令进行操作。`DESC`命令...

    ORACLE 10G修改字符编码没有超字符集的限制

    这是因为不同的字符集对字符的表示方式不同,转换过程中可能出现乱码或者无法识别的字符。因此,在更改字符集之前,强烈建议先备份数据,然后在新的字符集中重新导入数据,以确保数据的完整性和一致性。 以下是进行...

    oracle flash back stop

    - **使用正确的字符集进行数据导入导出**:在使用SQL*Loader、SQLPlus或其他工具时,指定正确的字符集参数。 - **转换字符集**:如果数据已经存在乱码,可能需要使用工具进行字符集转换。 文件名中提到的"Oracle10g...

    DRP培训日志.pdf

    - **字符编码**:在JSP中设置请求字符集,避免乱码问题,后期通过filter技术统一处理。 以上是DRP培训日志中的关键知识点,涵盖了项目开发、系统设计、数据库管理、面向对象编程、报表工具使用、前端交互等多个...

    linux 11及oracle 11系统安装操作手册

    4. **解决乱码问题:** 在安装过程中可能会遇到乱码问题,可以尝试通过以下命令临时解决: ```bash export LC_ALL=en_US export LANG=en_US ``` ##### 测试 Oracle 数据库 完成安装后,需进行一系列测试以验证...

Global site tag (gtag.js) - Google Analytics