1 0 Tag Archives: MySQL
post icon

Solucionar error: ‘Unable to convert MySQL date/time value to System.DateTime’

Ayer estuve trabajando con la versión 4 de MySQL y como front-end tenía a ASP.Net. Utilice como proveedor de datos MySQL Data Provider ofrecido gratuitamente por Oracle en su versión 6.2.

Mientras iba desarrollando la app lograba la conexión y el paso de datos varchar y las variantes númericas sin ningún problema, en cierto momento necesite trabajar con datos timestamp y datetime donde fue que me apareció el siguiente error:

Unable to convert MySQL date/time value to System.DateTime

Leyendo la documentación me enteré cual era el problema, algunos campos de este tipo de dato estaban con valores nulos o en el caso de datetime tenia ‘0000-00-00 00:00:00’. Lo cual produce el error de conversión con el Data Provider (por lo que leí también ocurre con conexiones ODBC). (Continuar Leyendo sobre Solucionar error: ‘Unable to convert MySQL date/time value to System.DateTime’)

post icon

Tutorial de Replicacion Circular en MySQL

Hace 8 meses atrás aproximadamente escribí sobre como crear una replicación de tipo Maestro/Esclavo con MySQL en la cual prometía continuar la guía escribiendo como hacer lo mismo pero de modo circular, es decir, una replicación 2-way.

Para llevar a cabo este tutorial, deberán configurar sus bases de datos como lo decía la primer parte. La misma pueden leerla aquí: Replicacion MySQL.

Una vez todo lo anterior este OK, detendremos (Continuar Leyendo sobre Tutorial de Replicacion Circular en MySQL)

post icon

Configurar Servidor Vinculado en SQL Server con MySQL

El año pasado habíamos visto como crear un servidor vinculado en SQL Server con Firebird, en ésta oportunidad veremos como hacerlo con MySQL, son muy parecidos los pasos a seguir, pero más sencillo que con el anterior motor.

Lo primero que necesitaremos es descargar el proveedor de datos OLE DB para MySQL (Perteneciente a Cherry Software). Ejecutamos el fichero setup.exe y seguimos los pasos correspondientes, en un punto de la instalación nos pedirá que descarguemos una librería (libmysql.dll) desde los repositorios de MySQL mismo, lo descargamos y copiamos en el path que nos indica, por lo general (Continuar Leyendo sobre Configurar Servidor Vinculado en SQL Server con MySQL)

post icon

Obtener la fecha y hora del sistema desde los motores de base de datos más utilizados

He notado que mucha gente busca éste tipo de contenido constantemente, así que decido finiquitar a los motores de base de datos más comunes en un único post, dado que también si lo hago por separado sería muy corto.

Una cosa que me gustaría dejar bien en claro, que en la mayoría de los motores que expondré hay más de un modo de conseguir la fecha y la hora del sistema operativo huésped, pero sólo mostraré la más común.
Vamos a lo práctico y veamos: (Continuar Leyendo sobre Obtener la fecha y hora del sistema desde los motores de base de datos más utilizados)

post icon

Analizar las consultas lentas de MySQL

Es típico hoy día ver aplicaciones con tiempos de respuestas extremadamente lentos, no precisamente por que tiene mucha concurrencia, ni por la mala infraestructura de red, ni otros, sino por la falta de optimización de los query´s SQL. Este tipo de problemas escapa al error de sintaxis, al error lógico incluso, ya que el query cumple con su cometido, pero de una muy mala manera, técnicamente tumba el servidor por mucho tiempo y lo deja inutilizable.

Solucionar éstos problemas no siempre es sencillo, ya que hallar que consultas producen estos problemas cuesta, y más aún (Continuar Leyendo sobre Analizar las consultas lentas de MySQL)

post icon

Como programar en n-Capas con C# (Parte 3)

Esta es la tercer entrega, probablemente será la más corta pero no la última aún. El motivo de su longitud es por que es una clase que se utiliza como medio para crear la flexibilidad y portabilidad de fuentes de datos, en éste caso motores de base de datos.

También daremos por terminada la capa de Acceso a Datos, entonces así no mezclamos el código y será más fácil seguirlo posteriormente. También pertenecerá al namespace AccesoDatos. Lo llamo conexión por que es la clase con las otras capas interactuaran en modo directo.
Para ello creamos un objeto estático de la clase GDatos que instanciará de la clase SqlServer. Creo que ya van captando el rumbo de esto no? si crearamos otra clase por ejemplo Oracle.cs o MySQL.cs, solamente cambiariamos una linea de código, donde el objeto GDatos del tipo GDatos, sea SqlServer, Oracle u otro motor que codifiquemos. Podemos hacerlo con ODBC, OleDB para conexiones genéricas. No les parece grandioso que solo deban tocar parte de una línea de código para portar la App a cualquier otro motor de Base de Datos? 😀 (Continuar Leyendo sobre Como programar en n-Capas con C# (Parte 3))

post icon

Exportar datos de MySQL a ficheros CSV

La tarea de importar y exportar datos a una base de datos es tan común y tan útil que casi todos los motores de hoy día traen su propia herramienta para hacer eso, ya no es necesario ir programando utilidades de este tipo. Estas pequeñas herramientas nos ahorraran bastante tiempo y dinero especialmente.

Exportar los datos de una tabla o varias tablas a un fichero .CSV (fichero con valores separados por comas) es tan sencillo que básicamente son unos parámetros  más a nuestro query de SELECT.

Además que es tan flexible y nos permite elegir (Continuar Leyendo sobre Exportar datos de MySQL a ficheros CSV)

post icon

Cargar datos de una base de datos con JSP

Hoy escribiremos por primera vez sobre JSP, Java Server Page. La evolución de los Servelts de Java, la cual se diferencia de su antecesor que ya no necesita ser compilado antes de deployarlo, sino este proceso se realiza por el servidor cuando el usuario lo solicita.

Trabajaremos con una base de datos MySQL, ya que es la más popular hasta hoy día para la plataforma web, de igual modo el ejemplo servirá para otros motores, solo deberíamos cambiar la capa de conexión por otra.

Trabajar con JSP y Netbeans es mucho más sencillo que con eclipse pero de igual modo lo haremos con este ultimo, personalmente he utilizado la versión Galileo para el ejemplo.

El ejemplo como siempre será lo más sencillo posible, en la BD necesitaremos crear una tabla básica de usuarios, que tengan nombres, los cuales mostraremos un listado de los mismos dentro de un Table HTML.

Una vez creado ésta tabla, que doy por hecho que lo pueden hacer, procederemos a crear nuestro proyecto Web. Una vez abierto nuestro IDE, buscaremos en el menú:

Archivo --> Nuevo --> Dinamic Web Proyect

Alli seteamos la configuración de desarollo, le colocamos el n0mbre al proyecto, yo le llamado JSPTroce, la versión del modulo que puede ser sin problemas el 2.4 o 2.5.

Siguiente --> Siguiente --> Finalizar

Una vez hecho esto, necesitaremos el driver JDBC para conectarnos a MySQL, la cual pueden descargar desde el sitio oficial. Más adelante también necesitaremos tener instalado el servidor o contenedor Web Apache Tomcat, preferentemente la versión 6, aunque debería funcionar sin ningún problema en la 5.5 el mismo lo descargan de aqui.

Una vez instalado el servidor, podemos copiar (Continuar Leyendo sobre Cargar datos de una base de datos con JSP)

post icon

Utilizar precisión de milisegundos en MySQL

Almacenar en campos de tipo DateTime, Time o Timestamp con una precisión fina en MySQL es un tanto difícil, ya que lamentablemente hasta la fecha aún no hay soporte para tal efecto. Se pueden formatear el tiempo pero si la fuente del tiempo es uno de estos campos en MySQL veríamos los milisegundos con valores cero.

En la lista de petición de desarrollo de MySQL hace más de 5 años que vienen pidiendo esto, y no hacen caso (el motivo lo desconozco) como pueden ver aqui (inglés requerido). Esto provocó distintas reacciones, algunos (Continuar Leyendo sobre Utilizar precisión de milisegundos en MySQL)

post icon

Solucionar error Can’t create table ‘???’ (errno: 150) en MySQL

Hace un momento me ha tocado resolver un problema que ocurría en uno de nuestros motores de MySQL, se daba cuando intentaba crear una llave foránea y el error era semejante al que sigue, donde ??? representa el nombre de la tabla:

Can't create table '???' (errno: 150)

Se estaba volviendo algo molesto y tenía una idea de lo que podía ser, un problema con la FK de las tablas, pero no encontraba que específicamente. Leyendo un poco la documentación encontré y aprendí que se puede deber principalmente a 3 situaciones: (Continuar Leyendo sobre Solucionar error Can’t create table ‘???’ (errno: 150) en MySQL)

Página 2 de 3123