详见https://blog.csdn.net/li123123/article/details/72632922

linux下sqlplus中文乱码问题解决

以前一直以为“客户端字符集要和服务端一致”指的是 nls_lang设置的最后一部分应该和数据库的字符集一致。结果就是这个误解害得我折腾了一天。
原来除了这两个字符集,还有一个是服务器即操作系统使用的字符集。客户端应该和服务器一致才是真的。

比如说,虽然数据库字符集是zhs16GBK,但是,但根据客户端的不同,nls_lang就需要分别设置为utf8或gbk
如,在Linux本地登录使用sqlplus concole的话,应该
export "NLS_LANG=SIMPLIFIED CHINESE_CHINA.al32utf8"
便是如果是在windows上用telnet 或 putty或secure ssh client连接到linux再用sqlplus console的话
应该这样:
export "NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

因为linux系统一般是UTF8,而windows系统一般是GBK

show parameter nls_la; #查看字符集

查看注释
--查看表的comment
select from all_tab_comments where table_name=upper('tablename');
--查看列的comment
select
from all_col_comments where table_name=upper('tablename');
sqlplus下字段显示整齐参考https://blog.csdn.net/huacai2010/article/details/7934932
oracle下分页查询(对应mysql的limit)
select * from zl_user_repay_record where rownum<=5;