2

Pl/Perl で書かれたこのストアド プロシージャがあります。

CREATE FUNCTION strip_html_tags(text) RETURNS TEXT AS $$
    use HTML::Strip;
    my $hs = HTML::Strip->new();
    my $clean_text = $hs->parse($_[0]);
    $hs->eof;
    return $clean_text;
$$ LANGUAGE plperlu;

データベース (LATIN1 encodend) にいくつかのフィールドがあり、次のようなものが得られるため、無効な文字が含まれている可能性があります。

db=# select strip_html_tags(field) from table;
ERROR:  character 0xe2809c of encoding "UTF8" has no equivalent in "LATIN1"
CONTEXT:  PL/Perl function "strip_html_tags"

PostgreSQL の convert() と convert_from() を使用してエンコーディングを変更しようとしましたが、うまくいきませんでした。何か案は?

前もって感謝します。

4

1 に答える 1

1
于 2013-03-22T11:39:20.427 に答える