先替换字符串中的\x22 为双引号,\x0A为回车

str2 = '{\x22name\x22:\x22hao\x22  \x0A ,\x22os\x22:\x22other\x22 }
print str2.decode('string_escape')

  

查看oracle服务器编码设置

select * from nls_database_parameters;

查看oracle客户端编码设置
select * from nls_instance_parameters;

本机NLS_CHARACTERSET=ZHS16GBK

查看客户端环境配置,需要和服务器一样配置成ZHS16GBK

cat /etc/sysconfig/i18n

LANG="zh_CN.UTF-8"
#LANG="zh_CN.GB18030"
#LANG=en_US.UTF-8
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

  

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

  

python

import urllib

log_object = eval(log_json)

ry:
if log_json.index('rolename') > 0 :
      
      try:															  tmp_str = str(log_object['rolename'])
  rolename = urllib.unquote(tmp_str).decode('utf8').encode('gb18030')   rolename = rolename[0:64]
       #write_log("rolename utf8->gbk1:" + str(log_object['rolename']))
  #write_log("rolename utf8->gbk2:" + urllib.unquote(tmp_str).decode('utf8'))
  #write_log("rolename utf8->gbk2:" + urllib.unquote(tmp_str).decode('utf8').encode('gb18030'))
 except Exception,e:
  write_log("rolename utf8->gbk:" + tmp_str + str(e))
  rolename = ''
  
else:
  rolename = ''
except Exception,e:
  rolename = ''

  

或者配置oracle用户下的环境变量

vi .bash_profile

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATH
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2./client_1
LD_LIBRARY_PATH=$ORACLE_HOME/lib
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export LANG=en_CN.GBK
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH
export PATH LD_LIBRARY_PATH
export NLS_LANG=American_China.ZHS16GBK

[Oracle] 用python插入中文的更多相关文章

  1. MySQL问题记录--python插入中文至MySQL提示SQLErroor:1366错误

    一.在爬虫脚本做以下操作仍提示错误:SQL Error: 1366: Incorrect string value: "\xd0\xc2\xce\xc5-" for column  ...

  2. 解决PLSQL Developer 插入中文 乱码问题

    https://blog.csdn.net/guowd/article/details/50989109 PLSQL Developer 插入中文 乱码问题,如图 这个是由于oracle服务器端字符编 ...

  3. 解决PLSQL Developer 插入中文 乱码问题(转)

    原文地址:解决PLSQL Developer 插入中文 乱码问题 PLSQL Developer 插入中文 乱码问题,如图     这个是由于oracle服务器端字符编码 和 Oracle 客户端 字 ...

  4. 解决Python往MySQL插入中文时报错的问题

    今天遇到一个问题,用Python往MySQL插入数据时,若数据中包含中文会报类似下面的错误: ERROR 1366: Incorrect string value: '\xE4\xB8\xAD\xE5 ...

  5. PLSQL往Oracle数据库插入中文后变为问号 和 启动PLSQL时提示NLS_LANG在客户端不能确定的解决办法

    PLSQL往Oracle数据库插入中文后变为问号 和 启动PLSQL时提示NLS_LANG在客户端不能确定的解决办法 1.检查服务器的字符编码 Select * from V$NLS_PARAMETE ...

  6. plsqldev、oracle插入中文乱码问题解决

    最近在开发项目时用到Oracle数据库,需要手动插入一些数据,但插入中文的sql值时出现了乱码. 中文乱码就是编码不统一所导致的了,解决办法只需要把编码统一下即可解决了. 此种情况最大的可能就是客户端 ...

  7. 解决Python向MySQL数据库插入中文数据时出现乱码

    解决Python向MySQL数据库插入中文数据时出现乱码 先在MySQL命令行中输入如下语句查看结果: 只要character_set_client character_set_database ch ...

  8. Python MySQLdb 使用utf-8 编码插入中文数据

    参考地址:http://blog.csdn.net/dkman803/article/details/1925326/ 本人在使用python,mysqldb操作数据库的时候,发现如下问题,编码如下: ...

  9. python向数据库插入中文乱码问题

    1.python向数据库插入中文乱码问题 直接手动insert into 中文 不乱码,但是用程序跑起来就乱码. conn =MySQLdb.connect(host="127.0.0.1& ...

随机推荐

  1. 继承users表,添加新字段成一个新表

    1. Tools > Run manage.py Task 创建app,users startapp users 2.修改users中的models from django.db import ...

  2. C++里的单体类实现

    单件模式是设计模式中最简单的模式了. 定义: 确保一个类只有一个实例,并提供一个全局的访问点. 把一个类设计成自己管理的一个单独实例,同时避免其他类再自行生成实例(所以构造函数用protect或pri ...

  3. java IO 学习(一)

    io的类有好多个,总结一下,给他们列出来,下一行缩进为子类: File 文件或目录类 InputStream 字节输入流 FileInputStream 用于读取文件的原始字节流,变成字节输入流 By ...

  4. C++语言的url encode 和decode

    std::string UrlEncode(const std::string& szToEncode) { std::string src = szToEncode; char hex[] ...

  5. python2 使用matplotlib

    背景 由於pyh在python3上沒法兒用,所以只能在python2上用pyh2 相應地也要在python2上使用matplotlib 下載 有兩種方法,pip & dnf pip爲: pip ...

  6. 图文详解如何利用Git+Github进行团队协作开发

    团队协作开发中,大部分都会用到版本控制软件,比如Git.Svn等.本文将通过一个实例,详细讲解在真实的工作环境中,一个团队应该如何利用Git+Github进行协作开发,即详解Git工作流程.并就其中比 ...

  7. 编程之美Ex2——字符串移位包含的问题

    给定两个字符串s1,s2,要求判定s2是否能够被s1做循环移位得到的字符串包含. 例如, 给定s1=AABCD和s2=CDAA,返回true: 给定s1=ABCD和s2=ACBD,返回false. 法 ...

  8. 编程之美Ex1——求二进制中1的个数

    又被阿里机考虐了一次,决定改变策略开始刷题T^T 一个字节(8bit)的无符号整型,求其二进制中的“1”的个数,算法执行效率尽可能高. 最先想到的移位操作,末尾位&00000001,然后右移, ...

  9. Java并发--如何创建线程

    下面是本文的目录大纲: 一.Java中关于应用程序和进程相关的概念 二.Java中如何创建线程 三.Java中如何创建进程 转载原文链接:http://www.cnblogs.com/dolphin0 ...

  10. 使用 Visual Studio Code(VSCode)搭建简单的 Python + Django 开发环境

    写在前面的话 作为有个 Python 菜逼,之前一直用的 Pycharm,但是在主题这一块怎么调整都感觉要么太骚,看起来不舒服,要么就是简直不能看.似乎用大 JB 公司 IDE 的人似乎都不怎么重视主 ...