gjfvip123
gjfvip123
2018-06-28 02:10
采纳率: 37.7%
浏览 984

关于python 链接sqlserver编码问题。

公司数据库用的编码集是gb2312
python默认的编码集是unicode.
pymssql.connect(charset='gb2312') 这句话会报错 ,写utf-8又与数据库编码集不一致,应该写啥?

造成乱码 是否就是因为数据库的编码与程序编码不一致造成的?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • caozhy
    已采纳

    你可以查询的时候,sql中给字符串加上N
    比如 select * from table where name=N'中文'

    点赞 评论
  • oyljerry
    oyljerry 2018-06-28 06:36

    把你的py文件的编码格式改成gb2312

     # -*- coding: gb2312 -*- 
    
    点赞 评论
  • qq_38798286
    qq_38798286 2018-06-28 09:59

    charset='utf-8'
    然后
    str =u"xxxxxxxxxx"
    字符串前面的u就是转码,你试试

    点赞 评论
  • qq_38798286
    qq_38798286 2018-06-28 10:02

    补充开启编码修正
    reload(sys)
    sys.setdefaultencoding('utf-8')

    点赞 评论
  • qq_42339655
    申哲 2018-07-21 00:19

    公司数据库的编码集你应该是动不了的,所以只能修改你的python默认的编码集setting>>editor>>file encodings>>gb2312试试

    点赞 评论

相关推荐