eygle.com   eygle.com
eygle.com  
 

« Statspack ORA-00001 错误的解决 | Blog首页 | 提前的圣诞祝福 »

中文表名-导入导出-字符集

作者:eygle |【转载时请务必以超链接形式标明文章和作者信息及本声明
链接:
见到有人问关于中文表名的导入导出问题,随手作了一个实验。
其实我从不推荐使用中文表名,因为可能在导入导出、字符集设置、应用显示等方面存在问题,要想正确解决面对的所有问题,必然需要对Oracle相关知识具有相当的了解,否则只是徒增困扰而已。

这个实验之前,只是见过别人使用中文表名、字段名等,自己却是第一次尝试,万事都有第一次么。
1.用中文名建立一个测试表

SQL> create table 测试 as select username from dba_users;

Table created.

Elapsed: 00:00:00.08
SQL> select * from 测试;

USERNAME
------------------------------
SYS
SYSTEM
OUTLN
EYGLE
CSMIG
TEST
REPADMIN
SCOTT
...
DBSNMP
WMSYS

13 rows selected.

Elapsed: 00:00:00.00

2.exp导出数据
导出的时候需要注意客户端的字符集设置

[oracle@jumper oracle]$ exp eygle/eygle file=a.dmp          

Export: Release 9.2.0.4.0 - Production on Tue Oct 18 10:58:24 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


Connected to: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning option
JServer Release 9.2.0.4.0 - Production
Export done in ZHS16GBK character set and AL16UTF16 NCHAR character set

About to export specified users ...
. exporting pre-schema procedural objects and actions
. exporting foreign function library names for user EYGLE 
. exporting PUBLIC type synonyms
. exporting private type synonyms
. exporting object type definitions for user EYGLE 
About to export EYGLE's objects ...
. exporting database links
. exporting sequence numbers
. exporting cluster definitions
. about to export EYGLE's tables via Conventional Path ...
. . exporting table                     PLAN_TABLE          0 rows exported
. . exporting table                             T1          5 rows exported
. . exporting table                             T2         13 rows exported
. . exporting table                           测试         13 rows exported
. ...
Export terminated successfully without warnings.

3.drop掉测试表
SQL> drop table 测试
  2  /

Table dropped.

Elapsed: 00:00:00.36

4.imp导出数据

[oracle@jumper oracle]$ imp eygle/eygle file=a.dmp tables=测试

Import: Release 9.2.0.4.0 - Production on Tue Oct 18 10:59:03 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


Connected to: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning option
JServer Release 9.2.0.4.0 - Production

Export file created by EXPORT:V09.02.00 via conventional path
import done in ZHS16GBK character set and AL16UTF16 NCHAR character set
. importing EYGLE's objects into EYGLE
. . importing table                         "测试"         13 rows imported
Import terminated successfully without warnings.

5.验证数据无误
SQL> select * from 测试; 

USERNAME
------------------------------
SYS
SYSTEM
OUTLN
EYGLE
CSMIG
TEST
...
WMSYS

13 rows selected.

Elapsed: 00:00:00.01
SQL> 

那么看来只要设置正确,也没有什么问题。
-----
这篇 【中文表名-导入导出-字符集】来自 www.eygle.com | CSDN技术网摘| del.icio.us|365Key

By eygle on 2005-10-18 11:21 | Comments (6) | Posted to CharacterSet | Edit |Pageviews:

相关文章 随机文章
  • DBA警世录:where条件很重要
  • 《循序渐进Oracle》一书第三章目录
  • 更改导出文件字符集的小工具
  • DBA警世录:更新系统表(props$)修改字符集
  • 关于od命令不同平台下不同输出问题说明
  • 在北京 见到彩虹
    投资 人生必需经历的成长
    2007上海Oracle Open World记事-之二
    新年快乐 我的朋友们
    经典图书推荐系列-之二
    网上相关主题:
    Google

    留言 (6)

    如果没有特殊的需要,
    还是不想把事情复杂化

    Posted by: brucewoo at October 18, 2005 12:28 PM

    看來沒什麼問題嘛

    Posted by: donnieyen at October 20, 2005 5:14 PM

    看來沒什麼問題嘛

    Posted by: donnieyen at October 20, 2005 5:15 PM

    是的,运气好的时候没有什么问题;运气不好的人就会遇到一堆问题了:)

    Posted by: eygle at October 20, 2005 7:48 PM

    我们的医院系统全是中文表名和字段名.其实也没有遇到什么问题.

    Posted by: cqhxb at November 8, 2005 9:00 PM

    无问题来源于深入全面的认知.

    Posted by: eygle at November 9, 2005 12:04 AM

    发表留言:



    Remember Me?
    (输入验证码后方可评论,谢谢支持)



    CopyRight © 2004 eygle.com, All rights reserved.