Mysql
 sql >> Database >  >> RDS >> Mysql

Caratteri ي e ی e la differenza in persiano - Mysql

Caro EBAG, abbiamo un solo arabo bloccare in Unicode che contiene sia arabo che persiano caratteri.

06CC è persiano ی e 064A è arabo ي

La tastiera predefinita di Windows utilizza code page 1256 per i caratteri arabi che mettono 064A come predefinito ي sia per gli utenti persiani che per quelli arabi perché gli utenti arabi sono molto più dei persiani.

ISIRI crea una tastiera standard ISIRI 9147 e metti sia l'arabo che il persiano Yeh su di esso ma Perisan ی è il carattere predefinito. Gli utenti persiani che utilizzano la tastiera standard inseriranno (e utilizzeranno) il persiano standard ی‍ while the rest of them use arabic ي`.

Come hai detto di solito mentre salviamo un dato nel database cambiamo l'arabo ي al persiano ‍ی e quando lo leggiamo, scegliamo semplicemente il persiano, quindi tutto è vero.

il secondo approccio consiste nell'utilizzare un file JavaScript nell'applicazione Web per controllare l'input dell'utente. la maggior parte dei siti Web persiani utilizza questo approccio per salvare i caratteri nel database. In questo metodo l'utente non ha bisogno di installare alcun layout di tastiera per la tastiera persiana o araba. Lui/lei ha appena messo la tastiera su English e poi in JavaScript lo sviluppatore di file controlla quale carattere è equivalente per lui. Qui puoi trovare ISIRI 9147 javascript per l'applicazione web e un Guid Persiano per usarlo.

il terzo approccio consiste nell'utilizzare una tastiera su schermo che funzioni esattamente come la precedente con un'interfaccia utente e di solito è utile per chi non ha familiarità con la tastiera persiana.

Il quarto approccio è cercare entrambi i dialetti. Come sai quando installi MySql o SQL Server puoi impostare il collation e hai anche un'opzione per supportare il dialetto (e la distinzione tra maiuscole e minuscole). se abiliti la confronto arabo con il dialetto puoi ottenere risultati per entrambi e di solito funziona bene in sql server Non lo provo in MySql . Questa è la soluzione migliore.

ma se fossi in te, implemento una semplice sql function che ottengono nvarchar e restituisci nvarchar . poi lo chiamo quando volevo scrivere dati. e ogni volta che vuoi leggere, puoi scegliere quello standard.

Scusate per la coda lunga.