如何解压缩python中的mysql longblob字段?
我在一个类型为longblob的mysql中有一个字段, 数据是从python保存的如何解压缩python中的mysql longblob字段?,python,mysql,Python,Mysql,我在一个类型为longblob的mysql中有一个字段, 数据是从python保存的 @classmethod def dataToObject(cls, data): if data: try: data = zlib.decompress(data) except zlib.error: pass if isinstance(
@classmethod
def dataToObject(cls, data):
if data:
try:
data = zlib.decompress(data)
except zlib.error:
pass
if isinstance(data, unicode):
data = data.encode("utf8")
try:
return cPickle.loads(data)
except:
return ErrorResponse("Can't Recovery Data")
@classmethod
def objectToData(cls, record):
return zlib.compress(cPickle.dumps(record))
@property
def Object(self):
return self.dataToObject(self.Data)
@Object.setter
def Object(self, record):
self.Data = self.objectToData(record)
我尝试用convert char在mysql中解压它
我尝试了使用zlib_解码的PHP,但它返回了
b "" "
ccore.Record \ n
PythonRecordToRecord \ n
p1 \ n
((ibase.tools.PythonRecord \ n
PythonRecord \ n
(dp2 \ n
S '__ newflag __' \ n
p3 \ n
I01 \ n
sS'fields' \ n
p4 \ n
(dp5 \ n
S'TransTime '\ n
p6 \ n
cdatetime \ n
time \ n
p7 \ n
(S '\ x0f \ x13 \ x12 \ x00 \ x00 \ x00' \ n
tRp8 \ n
sS'TotalBase2d '\ n
p9 \ n
F782.56999999999994 \ n
sS'DiffBase1 '\ n
p10 \ n
F0 \ n
sS'SerNr '\ n
p11 \ n
L100236529L \ n
sS'DiffBase2 '\ n
我刚刚开始使用python,但是这种数据压缩是我的专长
有什么想法吗
感谢您在Python中使用了
cPickle
,但是PHP没有取消pickle的命令,所以不要使用pickle。最好使用JSON将数据转换为字符串-可能所有语言都有JSON的函数或模块。python代码由我们的ERP生成,但我们有法律纠纷。因此,如果我使用python中的unpickle命令,我可以访问数据吗?如果是简单的日志数据。如果某个类被pickle,则需要导入该类以取消pickle(即使在Python中)。我看到了pythonRecordoreRecord
,ibase.tools.PythonRecord
。它可以是您必须导入的类。