dataRecv = '3231334744323031363030313831340000000000'
device_id = bytearray.fromhex(dataRecv[0:(len(dataRecv)-10)]).decode()
我得到了:
device_id = '213GD2016001813'
就像我想要的那样。
但后来我想用pyscopg2保存到postgresql:
execute("INSERT INTO table (column) VALUES (device_id)")
commit()
其中“列”数据类型为char(20)。 我得到的错误在这里:
syntax error at or near "GD2016001813"
213GD20160018...
^
我已经尝试使用 str(device_id)
将字符串转换为device_id,并在设备ID的开头和结尾添加撇号('),因此它将如下所示:{{ 1}}。但结果仍然相同,这部分是错误的:
VALUES ('device_id')
或这部分:
213GD20160018...
^
你能帮助我吗?三江源
答案 0 :(得分:0)
1)转换为字符串https://www.postgresql.org/docs/9.3/static/functions-formatting.html 2)检查列的格式可能只需要数字