Oracle查看字符集编码

1、查看数据库编码、客户端编码

--数据库编码,查询的数据来源props$,这个代表的是数据库字符集。
select * from nls_database_parameters where parameter = 'NLS_CHARACTERSET';
--其来源于v$parameter,表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表会话字符集环境
select * from nls_instance_parameters where parameter='NLS_LANGUAGE';
--session参数
select * from nls_session_parameters;

2、查看表数据的字节存储信息

select
    --数据的二进制编码表示
    asciistr(col1) A,
    --字节数据,10进制表示
    dump(col1) C10,
    --字节数据,16进制表示
    dump(col1,1016) C16,
    --数据的uncode编码表示
    compose(col1) uncode,
    --数据的16进制表示
    utl_raw.cast_to_raw(col1) cn,
    --数据的16进制的字符串格式
    utl_raw.cast_to_varchar2(utl_raw.cast_to_raw(col1)) cn2,
    col1
from
    schema1.table1
;

3、设置客户端(sqlplus)编码
docker登陆:

docker exec -it e48c9419b4d4 /bin/bash

登陆oracle安装用户:

su - oracle

设置服务器编码:

vi ~/.bash_profile
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
# export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"

source ~/.bash_profile

echo $NLS_LANG
# 显示AMERICAN_AMERICA.ZHS16GBK表示编码修改成功

sqlplus / as sysdba

# 向表中插入中文数据测试

posted on   毕九生  阅读(5367)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示