sql >> Base de Datos >  >> RDS >> Mysql

Caracteres ي y ی y la diferencia en persa - Mysql

Estimado EBAG, Tenemos un solo árabe bloquear en Unicode que contiene árabe y persa caracteres.

06CC es persa ی y 064A es árabe ي

El teclado de Windows predeterminado usa code page 1256 para caracteres árabes que ponen 064A por defecto ي tanto para usuarios persas como árabes porque los usuarios árabes son mucho más que persas.

ISIRI hacer un teclado estándar ISIRI 9147 y poner árabe y persa Yeh en eso pero Perisan ی son los caracteres predeterminados. Los usuarios persas que usan un teclado estándar colocarán (y usarán) el ی‍ while the rest of them use arabic ي`.

Como dijiste, generalmente, mientras guardamos datos en la base de datos, cambiamos el árabe ي al persa ‍ی y cuando lo leemos, usamos el persa para que todo sea cierto.

el segundo enfoque es usar un archivo JavaScript en la aplicación web para controlar la entrada del usuario. la mayoría de los sitios web persas utilizan este enfoque para guardar caracteres en la base de datos. En este método, el usuario no necesita instalar ningún diseño de teclado para el teclado persa o árabe. Él/ella acaba de poner el teclado en English y luego en JavaScript El desarrollador de archivos comprueba qué carácter es equivalente para él. Aquí puede encontrar ISIRI 9147 javascript para la aplicación web y un Guid persa para usarlo.

el tercer enfoque es usar un teclado en pantalla que funcione igual que el anterior con una interfaz de usuario y, por lo general, es bueno para los que no están familiarizados con el teclado persa.

El cuarto enfoque es buscar en ambos dialectos. Como sabes cuando instalas MySql o SQL Server puede establecer la collation y también tiene una opción para admitir dialecto (y mayúsculas y minúsculas). si habilita la intercalación árabe con dialecto, puede obtener resultados para ambos y, por lo general, esto funciona bien en sql server No lo pruebo en MySql . Esta es la mejor solución hasta ahora.

pero si yo fuera tú, implementaría una simple sql function que obtiene nvarchar y devolver nvarchar . luego lo llamo cuando quería escribir datos. y cuando quieras leer, puedes optar por el estándar.

Perdón por la cola larga.