Oracle
 sql >> база данни >  >> RDS >> Oracle

Не мога да вмъкна арабски знаци в базата данни на Oracle

Първо можете да проверите параметъра NLS_CHARACTERSET на вашата база данни, като използвате командата SQL*PLUS:-

изберете * от v$nls_parameters където параметър ='NLS_CHARACTERSET';

резултатът трябва да бъде

ПАРАМЕТЪР

СТОЙНОСТ

NLS_CHARACTERSET

AR8MSWIN1256

ако не е, трябва да промените стойността на този параметър с помощта на :-

  • натиснете WINDOWS KEY + r на вашата клавиатура

  • напишете:- SQLPLUS sys като sysdba

  • натиснете Enter, след това въведете паролата или просто натиснете още един Enter

  • издайте следните команди:

  • НЕЗАБАВНО ИЗКЛЮЧВАНЕ

  • ОГРАНИЧЕНИЕ НА СТАРТИРАНЕ

  • ALTER DATABASE CHARACTER SET INTERNAL_USE AR8MSWIN1256;

  • ПРОМЕНЯ НАБОР СИМВОЛИ НА БАЗАТА ДАННИ AR8MSWIN1256;

  • НЕЗАБАВНО ИЗКЛЮЧВАНЕ

  • СТАРТИРАНЕ

  • променете стойността на низа в регистъра NLS_LANG на AMERICAN_AMERICA.AR8MSWIN1256

    ако вашата операционна система е разновидност на UNIX използвайте

AR8ISO8859P6 вместо AR8MSWIN1256 като стойността на NLS_CHARACTERSET

  • НЕ използвайте национални типове данни (т.е. NVARCHAR, NTEXT или NCLOB) във вашата база данни, освен ако няма да използвате други езици освен (арабски и английски) във вашата база данни

  • Наборът от символи AR8MSWIN1256 е достатъчен за смесване на арабски и английски в едно и също поле (доколкото знам).

ВЗЕТО ОТ



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Преобразуване от Base 36 в Base 10 само с помощта на SQL

  2. Oracle 12c PLSQL SOAP EXTRACTVALUE от отговор на масив

  3. Java:Oracle XMLType + JDBC

  4. Ограничение за минимална дължина на колона

  5. Как да получа текущата година, използвайки SQL на Oracle?