|
|
|
|
- Presentación
- Principales observaciones
- Versiones necesarias
- Uso de los comandos de WLanguage en las consultas SQL
- Limitaciones de la versión 3.23x de MySQL
- Gestión de archivos de gran tamaño
- INSERTAR consultas e identificador de automatic
- Creación de una tabla con HCreation
- Soporte para Unicode
- Conexión con certificados SSL
- Requisitos generales
- Bloqueo de registros
- Registros idénticos
- Transacciones
- Artículos de set o ENUM
- Posiciones de xBlob
- Campos de tipo Array
- Usando consultas INSERT/UPDATE para insertar texto en un ítem LONGBLOB (memo binario) en MySQL
- Partial indexación de memos e indexación de texto completo
- Características específicas de las funciones HFSQL y las funciones SQL
Conector Nativo MySQL: Características específicas y observaciones
Disponible solo con este tipo de conexión
Los siguientes párrafos presentan los principales aspectos y características específicas del Conector Nativo de MySQL. Principales observaciones Versiones necesarias Atención: Esta versión del Native MySQL Connector funciona con: - WINDEV o WEBDEV 2024.
- Biblioteca cliente de MySQL (archivo LibMySQL.DLL):
- Librería cliente de 32 bits para utilizar el Conector Nativo MySQL de 32 bits (versiones 3.x a 5.x probadas).
- Librería cliente de 64 bits para utilizar el Conector MySQL Nativo de 64 bits (versión 5.x probada).
Uso de los comandos de WLanguage en las consultas SQL Los comandos de WLanguage no pueden utilizarse en las consultas SQL. Limitaciones de la versión 3.23x de MySQL La versión 3.23x de la base de datos MySQL no es compatible: - la búsqueda de Partial. El uso de Partial Fetch con las funciones SQL de WLanguage tiene el mismo efecto que si no se usara Partial Fetch.
- los sindicatos.
Gestión de archivos de gran tamaño Cuando se manejan archivos grandes, todos los registros se cargan en la memoria. Para reducir el uso de la memoria, se recomienda: - utilizar un filtro (HFilter) antes de inicializar una iteración (HReadFirst / HReadLast, ...)
- utilizar consultas cuyas condiciones de selección sean suficientemente selectivas
- evitar realizar búsquedas.
INSERTAR consultas e identificador de automatic Los identificadores automatic no son compatibles con las consultas INSERT (creadas mediante programación o en el editor de consultas). Para utilizar un identificador automatic, llame a HAdd en el tabla. Creación de una tabla con HCreation Soporte para Unicode Cuando la conexión soporta Unicode (modo predeterminado), los elementos de texto de las consultas ejecutadas con la constante hQueryWithoutCorrection adoptan el formato Unicode. Si se asigna una cadena Unicode a una cadena Ansi, WINDEV y WEBDEV realizan automáticamente la conversión utilizando el carácter set definido con ChangeCharset. Si la conexión es ANSI ("WD Unicode Support = 0" en la información extendida especificada por HDescribeConnection o HOpenConnection f002300 ), los elementos de texto de las consultas ejecutadas con la constante hQueryWithoutCorrection están en formato ANSI. Conexión con certificados SSL Para establecer una conexión con SSL Certificate, debe: - Instalar una versión del servidor MySQL que soporte las conexiones SSL. Para más detalles, consulte la documentación de MySQL.
- Crear los certificados necesarios.
- Establezca una conexión utilizando las siguientes palabras clave en la información avanzada de la conexión:
| | Palabra clave | aprovechamiento |
---|
clave SSL | Ruta del archivo clave. | Certificado SSL | Ruta del archivo de Certificate. | SSL CA | Ruta del archivo de la autoridad de certificación. | SSL CAPath | Ruta del directorio que contiene los certificados de las autoridades de certificación SLL reconocidas, en formato PEM. | Cifrado SSL | Lista de cifras autorizadas. |
Ejemplo de conexión SSL en la base de datos CRM del servidor mysqlserver.domain.fr: MyConnection is Connection // Describe the connection MyConnection.User = "root" MyConnection.Password = "secret" MyConnection.Server = "mysqlserver.domain.fr" MyConnection.Database = "CRM" MyConnection.Provider = hNativeAccessMySQL MyConnection.Access = hOReadWrite // Describe the extended information for an SSL connection MyConnection.ExtendedInfo = [ SSL KEY = E:\MySSLCertificates\mysql.key; SSL CERT = E:\MySSLCertificates\mysql_cert.pem; SSL CA = E:\MySSLCertificates\ca-cert.pem; SSL CAPATH = E:\MySSLCertificates\CA\ ] // Open the connection HOpenConnection(MyConnection)
Observación: Estos parámetros corresponden a los parámetros de la función mysql_ssl_set de la C API para acceder a MySQL. Bloqueo de registros Las opciones de bloqueo (constantes hLockWrite y hLockReadWrite ) que se pueden usar con funciones HFSQL no son compatibles con esta versión. Registros idénticos El Native MySQL Connector no puede diferenciar entre dos registros idénticos (dos registros con valores idénticos para todos los elementos, excluyendo los elementos memo). Cuando se modifica o elimina una Record, se modifican o eliminan todas las Record idénticas. Transacciones Para gestionar las transacciones, debe utilizar un tipo de MySQL tabla que soporte los comandos BEGIN, COMMIT y ROLLBACK. Artículos de set o ENUM Los elementos set y ENUM se procesan e importan automáticamente como nota de texto en WINDEV y WEBDEV. De hecho, los elementos set y ENUM no tienen equivalencia en HFSQL. Contienen valores numéricos (índices) que corresponden a valores "texto".. Estos son los valores de "texto" que se importan. Posiciones de xBlob Los elementos xBlob en MySQL se procesan automáticamente y se importan como notas de texto en WINDEV o WEBDEV: - las partidas BLOB se importan como partidas pro memoria binaria.
- las posiciones LONGTEXT se importan como posiciones de nota de texto.
Campos de tipo Array Los artículos de array no están soportados por el Conector Nativo. Si está utilizando un elemento array, sólo el valor del índice 1 en la array será manejado por las funciones HFSQL (lectura/escritura). Usando consultas INSERT/UPDATE para insertar texto en un ítem LONGBLOB (memo binario) en MySQL Para permitir la gestión de los elementos Unicode, las conexiones del Native MySQL Connector se abren en UTF8: todas las peticiones y los datos se intercambian en UTF8 con el servidor. El servidor convierte la solicitud y los valores en el juego de caracteres correspondiente a cada columna, a excepción de un elemento LONGBLOB (nota binaria): en este caso, el valor se inserta tal cual. Para un elemento LONGBLOB: - si la conexión está en formato ANSI, el valor de texto insertado está en formato ANSI.
- si la conexión está en formato UTF8, el valor del texto insertado está en formato UTF8; en este caso, puede producirse un problema de compatibilidad.
Para evitar este problema de conversión en UTF8, puede hacerlo: Partial indexación de memos e indexación de texto completo La indexación de los memorandos de Partial, así como la indexación del texto completo no se tienen en cuenta: - al importar tablas MySQL al análisis.
- cuando se utiliza HCreation.
Si estas características se definen en el análisis, se tendrán en cuenta al ejecutar las consultas SQL (con la constante hQueryWithoutCorrection ) que utilizan las funciones SQL "CREATE TABLE" y "MATCH CONTRA". Características específicas de las funciones HFSQL y las funciones SQL Las características específicas para usar las funciones HFSQL y SQL con el Native MySQL Connector son las siguientes: | | Limitaciones | Funciones afectadas |
---|
Consulta de varios archivos (join): - Las funciones HAdd, HModify y HDelete no están soportadas.
- control Tabla basada en una consulta de varios archivos (join): Las funciones HAdd, HModify y HDelete no están soportadas.
| HAdd HModify HDelete | Las búsquedas realizadas en algunas consultas complejas con HReadSeek* pueden fallar en esta versión. Este problema se solucionará en una próxima versión. | HReadSeek, HReadSeekFirst, HReadSeekLast | Cuando utilice el Conector Nativo MySQL, debe especificar la "Base de Datos" utilizada. Si utiliza la función HConnect, se debe especificar la "Base de datos" en la información adicional de la siguiente manera: "catálogo inicial = NombreBaseDatos" | HConnect | Al crear tablas con la función HCreation, los nombres de las tablas no deben contener acentos (Ejemplo: "ÉlanFile"). Este es un problema específico de MySQL (probado en las versiones 3.23.52-max-nt y 3.23.47-max-nt del servidor MySQL). La ejecución del comando SQL "DROP TABLE", ejecutado por HCreation para eliminar tabla si ya existe, puede provocar que el servidor MySQL se detenga inesperadamente.. Para obtener más información, consulte Conector Nativo MySQL: Características específicas. | HCreation |
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|