为什么Perl DBI转义从MySQL检索的值?
发布时间:2020-12-15 23:25:55 所属栏目:大数据 来源:网络整理
导读:我在 MySQL中有一个包含撇号(‘)和省略号(…)的值: $/bin/echo "select alias from url_alias where source = 'node/12024'" | mysql --skip-column-names -D cat36ia_d7prod 输出: forum/technical-discussion/nagging-questions-i’ve-been-too-embarr
我在
MySQL中有一个包含撇号(‘)和省略号(…)的值:
$/bin/echo "select alias from url_alias where source = 'node/12024'" | mysql --skip-column-names -D cat36ia_d7prod 输出: forum/technical-discussion/nagging-questions-i’ve-been-too-embarrassed-ask… 当我使用Perl DBI和DBD :: mysql检索值时,该值已更改: $perl -MDBI -MDBD::mysql -e '$dbh=DBI->connect( "DBI:mysql:database=my_db",nick ); $v=$dbh->selectrow_array(qq|select alias from url_alias where source = "'node/12024'"|); print "$vn";' 输出: forum/technical-discussion/nagging-questions-i?ve-been-too-embarrassed-ask? 为什么Perl这样做?我可以覆盖它吗? 解决方法
>告诉Perl如何编码输出.
use open ':std',':encoding(UTF-8)'; >使用以数据的形式从数据库中获取数据 DBI->connect("DBI:mysql:database=my_db",$user,$pass,{ mysql_enable_utf8 => 1,}) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |