首頁  >  問答  >  主體

python - mysql怎么插入字节型数据?

1.我通过python,向mysql插入类似b'\x33\x00\x78\xff'的数据。mysql的字段类型是varchar,插入之后发现,数据少了转义字符. 而且也不知道把数据重新读出来后,怎么把它从字符串变回字节类型的数据。

sql = "insert into myapp_userinfo (info) values (\"%s\")" % b'\x01\x00\x00\x00...'
xx.execute(sql)
...


2
varchar类型被我穿成blob,然后尝试继续插入,还是不行。

python读回来的结果

我希望数据能够原模原样的写进和读出来
刚接触python和mysql,这个问题弄了很久,有懂的人请回答下,谢谢!

大家讲道理大家讲道理2740 天前1028

全部回覆(4)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:24:43

    可以試試把資料序列化後存入資料庫,取的時候轉一次,這樣試試

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-18 10:24:43

    跟問主的資料庫編碼有關係,將所有的系統編碼改為utf-8就可以了

    我的資料庫編碼如下:

    回覆
    0
  • 黄舟

    黄舟2017-04-18 10:24:43

    mysql 不是有個專門用來存二進位的資料型態嗎? BINARY和VARBINARY類型

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-18 10:24:43

    可以考慮像密碼經過AES加密成二進位後經過base64_encode转成字符串存储到密码字段中,读取时base64_decode解碼即可.

    回覆
    0
  • 取消回覆