Home >Database >Oracle >How to modify the character set in oracle

How to modify the character set in oracle

WBOY
WBOYOriginal
2022-01-25 14:30:3724015browse

How to modify the character set in oracle: 1. Export the database data, re-create the database, set the character set and import the database to modify the character set; 2. Use the "ALTER DATABASE CHARACTER SET" statement to modify the character set, only the new one The database character set can only be modified when the character set is a superset of the current character set.

How to modify the character set in oracle

The operating environment of this tutorial: Windows 10 system, Oracle 11g version, Dell G3 computer.

How oracle modifies the character set

What is the Oracle character set

The Oracle character set is a collection of symbols for the interpretation of byte data, with different sizes There is a mutual tolerance relationship. ORACLE's national language support architecture allows you to use localized languages ​​to store, process, and retrieve data. It automatically adapts database tools, error messages, sort orders, dates, times, currencies, numbers, and calendars to localized languages ​​and platforms.

The most important parameter that affects the Oracle database character set is the NLS_LANG parameter.

Its format is as follows: NLS_LANG = language_territory.charset

It has three components (language, territory and character set), each component controls the characteristics of the NLS subset.

Among them:

  • Language: Specify the language of the server message, which affects whether the prompt message is Chinese or English

  • Territory: Specify The server's date and number format,

  • Charset: Specifies the character set.

For example: AMERICAN _ AMERICA. ZHS16GBK

We can see from the composition of NLS_LANG that it is the third part that really affects the database character set.

So as long as the character sets between the two databases are the same in the third part, data can be imported and exported from each other. The previous impact is only on whether the prompt information is Chinese or English.

Character set

The essence is to assign a set of different numerical codes to a specific set of symbols according to a certain character encoding scheme. The earliest encoding scheme supported by Oracle database is US7ASCII.

Oracle’s character set naming follows the following naming rules:

That is: < Number of bits>

For example: ZHS16GBK means using GBK encoding format, 16-bit (two bytes) Simplified Chinese character set

Modify the database character set

As mentioned above, in principle, the database character set cannot be changed after creation. However, there are 2 methods available.

1. If you need to modify the character set, you usually need to export the database data, rebuild the database, and then import the database data for conversion.

2. Modify the character set through the ALTER DATABASE CHARACTER SET statement, but there are restrictions on modifying the character set after creating the database. The database character set can only be modified when the new character set is a superset of the current character set, for example UTF8 is a superset of US7ASCII. You can use ALTER DATABASE CHARACTER SET UTF8 to modify the database character set.

Recommended tutorial: "Oracle Video Tutorial"

The above is the detailed content of How to modify the character set in oracle. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn