How can I tell if my Oracle system is set to support Unicode or multibyte characters?
SELECT *
FROM v$nls_parameters
WHERE parameter LIKE '%CHARACTERSET';
will show you the database and national character set. The database character set controls the encoding of data in CHAR
and VARCHAR2
columns. If the database supports Unicode in those columns, the database character set should be AL32UTF8 (or UTF8 in some rare cases). The national character set controls the encoding of data in NCHAR
and NVARCHAR2
columns. If the database character set does not support Unicode, you may be able to store Unicode data in columns with these data types but that generally adds complexity to the system-- applications may have to change to support the national character set.
Oracle Database Character Set
And Unicode is your friend, use NVARCHAR or NTEXT.
SQL Error: ORA-12712: new character set must be a superset of old character set
For an ALTER DATABASE CHARACTER SET
statement to execute successfully, two conditions must be fulfilled:
- Each and every character in the current character set is available in the new character set.
- Each and every character in the current character set has the same code point value in the new character set. (ie: the old charset must be a subset of the new one)
Because WE8MSWIN1252
is not a strict subset of AL32UTF8
this statement will fail (example: the pound sign is A3
in hex in WE8MSWIN1252
, but in AL32UTF8
it is C2 A3
).
You'll need to use CSALTER
to do this migration.
Refer to: Character Set Migration.
How can I run Oracle XE on localhost only?
There are two parts for this (because there are two 'technologies' serving different ports).
Firstly the listener for database port 1521. You use a SQLNET.ORA setting (tcp.invited_nodes) as a soft firewall, so the listener will ignore other nodes.
Secondly, for the 8080 PL/SQL gateway you need to use DBMS_XDB.SETLISTENERLOCALACCESS as described here
Related Topics
Session_Start() Creates New Session Every Refresh
Blank Spaces in Column Names with MySQL
Storage in Laravel Says Symlink - No Such File
How to Detect and Handle MySQL Warnings with PHP
Expose "Use" Classes to Included File
Why Can't I Overload Constructors in PHP
MySQL Transactions Within Transactions
Yii2 Global Filter/Behavior to Force User to Authenticate First
Multiple Auto Increment in MySQL
Is There Open-Source Code for Making 'Link Preview' Text and Icons, Like in Facebook
PHP Allocate Color Without Image Resource
How to Convert the Time from Am/Pm to 24 Hour Format in PHP
Getting Data Posted in Between Two Dates
Can't Find the File Created by Outfile in MySQL
Folder Structure of a PHP MVC Framework... am I Doing This Right