Cuando se utiliza ASP para leer la base de datos MYSQL, aparecen caracteres confusos. ¿Se leen todos los caracteres chinos? ? ? ? Este problema se debe a que
El juego de caracteres de la base de datos, el juego de caracteres de la tabla y el juego de caracteres de campo están configurados en: gbk_chinese_ci
Preste atención a Stmt=Establecer nombres 'GBK' en la cadena de conexión de la base de datos. Esta oración debe incluirse.
El siguiente es el código para el enlace asp a mysql. Tenga en cuenta que hay un GBK en la parte posterior. Esto especifica el tipo de codificación del enlace. Según los datos que utilizas
Tipo de codificación de biblioteca. Modifícalo a tu gusto.
Cadena de conexión = Controlador = {MySQL ODBC 3.51
Controlador};Servidor=miservidor;Base de datos=mysql;Usuario=miusuario;contraseña=micontraseña;Opción=3;Stmt=Establecer
Nombres 'GBK'
Si usa una versión superior de mysql, esta situación ocurre a menudo. Los caracteres chinos a menudo se incluyen en php.
Método de referencia:
Establezca la fuente de mysql.
Agregar mysql.ini
[mysql]
conjunto de caracteres predeterminado = gb2312
[cliente]
conjunto de caracteres predeterminado = gb2312
[mysqld]
conjunto-de-caracteres-predeterminado=gb2312 //o gbk
Después de cambiar el registro, la base de datos anterior al cambio no tiene ningún efecto. El contenido de los archivos db.opt en estos directorios de bases de datos se cambia a.
conjunto de caracteres predeterminado = gb2312
intercalación predeterminada = gb2312_chinese_ci
También puedes hacer esto
nombre del controlador tenue, chs
nombredelconductor=Conductor={mysql odbc 3.51
controlador};servidor=localhost;base de datos=prueba;uid=loaer;pwd=123456;
establecer conexión=servidor.createobject(adodb.conexión)
conn.open nombre del controlador
'Ejecute la siguiente oración antes de consultar
establecer chs=conn.Execute(ESTABLECER NOMBRES 'gb2312')
'Consultar tabla de base de datos
sql = SELECCIONAR * DE tb_commondata
Establecer rs = conexión. Ejecutar (sql)
De esta manera no habrá caracteres confusos.