在oracle中将特殊字符转换为纯文本

问题描述:

我们有一个数据库utf8作为字符集。现在在一个表中,我们有一个价值像
'HERBES-Herbeàpoux'。现在我们要把它转换成HERBES-Herbe a poux。即a→a。
我们不能有一个替换函数,因为值是动态的。

we are having a database with utf8 as charset. now in one table we are having a value like 'HERBES-Herbe à poux' . now we have to convert it into 'HERBES-Herbe a poux' . i.e à-->a. We cannot have a replace function since the values are dynamic.

请帮助我们。

什么构成一个特殊字符给你?任何在US7ASCII字符集之外的东西?

What constitutes a "special character" to you? Anything outside the US7ASCII character set?

您可以使用 CONVERT 函数

You can potentially use the CONVERT function

SELECT convert( <<your string>>, 'US7ASCII' )
  FROM table_name



Assuming that there is a mapping for the particular character to the US7ASCII character set, that mapping will be used to replace the character. If there is no mapping defined, the character will be replaced by the default replacement character, a question mark "?".