[英]How can I serialize and deserialize Perl data to/from database?
將數據序列化到數據庫的最佳模塊或方法是什么?
目前我正在研究Storable函數的freeze
和thaw
,例如:
use Storable qw(freeze thaw);
use strict;
my %array_test = ('Year Average' => 0.1, 'Color Average' => 0.8, 'Humans' => 0, 'Units' => 1);
my $serialized_data = freeze(\%array_test);
my %deserialized_data = %{ thaw($serialized_data) };
我想知道的是:
答案取決於您需要序列化的數據類型。
Native:有打包/解包,對於普通數字數組,你可以用逗號等連接......任何簡單的本機方法都是特定於域的,不適用於通用數據。
Storable
是一種良好的標准方法。 還有其他人(我聽說過FreeseThaw但從未使用過)。 您還可以執行YAML或JSON格式化 - 為了進行比較,請參閱最近的StackOverflow問題 ,該問題涉及通過IO :: Socket :: INET發送數據數組(這也涉及序列化)。
進一步的編碼需要取決於您的序列化以及您對數據的處理方式。
例如,如果序列化保留純文本字符串,並且這些字符串可以包含引號,並且您在SQL語句的中間使用序列化數據(而不是綁定變量),則需要對引號進行編碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.