将 erlang 套接字存储到数据库

Store erlang socket to database

我需要将套接字存储到数据库中, gen_tcp:accept returns 类似

#Port<0.5>

我可以使用 io_lib:format

将其转换为位串
["Port<0.5>"]

将其存储到数据库中,但如何将其转换回原始状态以使用它发送和接收数据?

更新: 我试过 term_to_binary 但 mysql-otp 未能插入它所以我做了 binary_to_list(term_to_binary(Socket)) ,它插入很好但在开头添加了额外的 <<194,xxx,xx...>>将二进制文件存入数据库,有什么解决办法吗?为什么会这样?如果它不添加额外的数据,我可以使用 binary_to_term.

将其转换回来。

我将 varchar 更改为 varbinary,现在我可以直接将 term_to_binary 插入数据库,然后使用 binary_to_term.

重用它