1

製品名など、データベース内の一部のテキストをデータ駆動します。最近、マーケティング チームから、登録商標記号 ®、ASCII コード 174 などの特殊文字を使用して製品名を表示するように依頼されました。

私の質問は、この文字をデータに保存して、HTML 形式と非 HTML 形式の両方で正しく表示するにはどうすればよいでしょうか? 最初に、次のようなことを試しました。

update products_table set display_name = 'FooCorp' || chr(174) || ' Awesome Product' where product_id = 1;

TOAD でその製品をクエリすると、登録商標記号が正しく表示されますが、Web アプリケーションでそのテキストをクエリして表示しようとすると、Firefox も IE も表示方法を知りません。どちらも「? の付いたひし形」を示しています。代わりにシンボル。

次に、これを行いました。

update products_table set display_name = 'FooCorp&#174 Awesome Product' where product_id = 1;

...これは私たちのウェブアプリを満足させますが、もちろん、製品リストを表示しようとする非 HTML (例: レポートを生成する SQL クエリ) は名前に HTML 文字を表示するようになりました。

HTML と非 HTML の両方の世界を満足させる方法について何か考えがある人はいますか? 理想的には、テキストを複製する別の列を作成することは避けたいと考えていますが、それが本当に唯一の方法である場合は、その方法をとることもできます。

4

1 に答える 1

0

まあ、chr(174) は Oracle では smth を意味するかもしれませんが、Web ブラウザに関しては diff char があるかもしれません。設定など...よくわかりませんが、その文字をクエリにハードコーディングするだけかもしれません。

    SELECT 'FooCorp® Awesome Product' FROM dual;
于 2013-02-07T19:09:51.290 に答える