• No se han encontrado resultados

MySQL. Historia del proyecto

N/A
N/A
Protected

Academic year: 2021

Share "MySQL. Historia del proyecto"

Copied!
6
0
0

Texto completo

(1)

MySQL

MySQL es un sistema de gestión de bases de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones.1MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema de licenciamiento dual.

Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero para aquellas empresas que quieran incorporarlo en productos privativos deben comprar a la empresa una licencia específica que les permita este uso. Está desarrollado en su mayor parte en ANSI C.

Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y los derechos de autor del código están en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.

Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Además de la venta de licencias privativas, la compañía ofrece soporte y servicios. Para sus operaciones contratan trabajadores alrededor del mundo que colaboran vía Internet. MySQL AB fue fundado por David Axmark, Allan Larsson y Michael Widenius.

Historia del proyecto

SQL (Lenguaje de Consulta Estructurado) fue comercializado por primera vez en 1981 por IBM, el cual fue presentado a ANSI y desde entonces ha sido considerado como un estándar para las bases de datos relacionales. Desde 1986, el estándar SQL ha aparecido en diferentes versiones como por ejemplo: SQL:92, SQL:99, SQL:2003. MySQL es una idea originaria de la empresa opensource MySQL AB establecida inicialmente en Suecia en 1995 y cuyos fundadores son David Axmark, Allan Larsson, y Michael "Monty" Widenius. El objetivo que persigue esta empresa consiste en que MySQL cumpla el estándar SQL, pero sin sacrificar velocidad, fiabilidad o usabilidad.

Michael "Monty" Widenius en la década de los 90 trató de usar mSQL para conectar las tablas usando rutinas de bajo nivel ISAM, sin embargo, mSQL no era rápido y flexible para sus necesidades. Esto lo llevó a crear una API SQL denominada MySQL para bases de datos muy similar a la de mSQL pero más portable.

(2)

El nombre de MySQL procede de la combinación de My, hija del cofundador Michael "Monty" Widenius, con el acrónimo SQL (según la documentación de la última versión en inglés). Por otra parte, el directorio base y muchas de las bibliotecas usadas por los desarrolladores tenían el prefijo My.

El nombre del delfín de MySQL es Sakila y fue seleccionado por los fundadores de MySQL AB en el concurso “Name the Dolphin”. Este nombre fue enviado por Ambrose Twebaze, un desarrollador de software de código abierto africano, derivado del idioma SiSwate, el idioma local de Swazilandia y corresponde al nombre de una ciudad en Arusha, Tanzania, cerca deUganda la ciudad origen de Ambrose.

Lenguajes de programación

Existen varias APIs que permiten, a aplicaciones escritas en diversos lenguajes de programación, acceder a las bases de datos MySQL, incluyendo C, C++, C#, Pascal, Delphi (via dbExpress), Eiffel, Smalltalk, Java (con una implementación nativa del driver de Java), Lisp, Perl, PHP, Python, Ruby,Gambas, REALbasic (Mac y Linux), (x)Harbour

(Eagle1),FreeBASIC, y Tcl; cada uno de estos utiliza una API específica. También existe una interfaz ODBC, llamado MyODBC que permite a cualquier lenguaje de programación que soporteODBC comunicarse con las bases de datos MySQL. También se puede acceder desde el sistema SAP, lenguaje ABAP.

Aplicaciones

Toma de pantalla programa de Monitoreo Mtop.

MySQL es muy utilizado en aplicaciones web, como Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy ligada a PHP, que a menudo aparece en combinación con MySQL. MySQL es una base de datos muy rápida en la

(3)

lectura cuando utiliza el motor no transaccional MyISAM, pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificación. En aplicaciones web hay baja concurrencia en la modificación de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones. Sea cual sea el entorno en el que va a utilizar MySQL, es importante monitorizar de antemano el rendimiento para detectar y corregir errores tanto de SQL como de programación.

CONEXIÓN A MYSQL DESDE VISUAL BASIC 6

MySQL es una de las base de datos mas rápidas y potentes de la actualidad si a esto le agregamos lo rápido que se torna desarrollar bajo Visual Basic sin dudas corremos con grandes ventajas a la hora de crear potentes aplicaciones. No solo para acceder de forma local a nuestra base de datos sino también puede que necesitemos acceder a un servidor MySQL localizado en otra parte del mundo y hasta que este corra bajo Linux. Como primer paso debemos crear la referencia a RDO (Remote Data Object) desde nuestro Visual Basic, para esto vamos al menú Proyecto > Referencias... y ahí seleccionamos Microsoft Remote Data Object...

Esa va a ser la librería (similar a ADO o DAO) que nos va a dar todos los métodos para poder conectarnos tanto local como de forma remota a un servidor MySQL. La aplicación de ejemplo que hemos creado conecta al servidor indicado mediante un

(4)

usuario y contraseña y nos devuelve todas las tablas de la base de datos indicada, veamos un gráfico así queda mas claro...

Al hacer click en el botón conectar se inicia el proceso de conexión al servidor indicado... Private Sub boton_conectar_Click()

Dim cadena_conexion

'creamos la cadena de conexión leyendo los valores de los textbox

cadena_conexion = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=" & servidor & "; DATABASE=" & base_de_datos & " ;PWD=" & password & "; UID=" & usuario & ";OPTION=3"

Set db = New rdoConnection

'asociamos la cadena de conexión al objeto db.Connect = cadena_conexion

db.CursorDriver = rdUseServer 'establecemos la conexión db.EstablishConnection End Sub

Ese es el código que nos conectara a nuestro servidor MySQL, vemos en negrita los comentarios en el código que nos facilitaran entenderlo. El próximo paso será obtener el listado de todas las tablas de la base de datos abierta....

(5)

Dim tabla As rdoTable Dim hay_tablas As Boolean hay_tablas = False

cambiar_botones True

'recorremos todas las tablas For Each tabla In db.rdoTables

'extraemos el nombre de la tabla y lo agregamos en un listbox tablas.AddItem tabla.Name

hay_tablas = True Next

If Not hay_tablas Then

MsgBox "La base de datos esta vacia" boton_desconectar_Click

End If

Hasta aca ya tenemos una lista de todas las tablas que hay en la base de datos, ahora solo nos queda listar el contenido de la tabla seleccionada...

Dim tabla As String

Dim consulta As New rdoQuery Dim resultados As rdoResultset Dim contenido_row As String Dim columna As rdoColumn contenido.Clear

tabla = tablas.List(tablas.ListIndex)

'le indicamos al objeto consulta que usaremos db como base de datos activa Set consulta.ActiveConnection = db

'creamos la consulta SQL y la ejecutamos

consulta.SQL = "SELECT * FROM " & tabla & " WHERE 1" consulta.Execute

'asigamos el resultado de la consulta a nuestro objeto resultados (rdoResultset) Set resultados = consulta.OpenResultset

'recorremos todos los resultados While Not resultados.EOF contenido_row = ""

(6)

'cargamos el contenido de cada registro For Each columna In resultados.rdoColumns

contenido_row = contenido_row & columna.Name & "=" & resultados(columna.Name) & "; " Next

'agregamos el contenido de cada registro al listbox contenido.AddItem contenido_row

resultados.MoveNext Wend

'cerramos y borramos los objetos resultados.Close

Referencias

Documento similar

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

E Clamades andaua sienpre sobre el caua- 11o de madera, y en poco tienpo fue tan lexos, que el no sabia en donde estaña; pero el tomo muy gran esfuergo en si, y pensó yendo assi

En este proyecto se emplea para dicha comunicación el lenguaje de programación denominado Node-RED que permite recibir y enviar datos desde CODESYS a MySQL y viceversa, tal como se

Existen infinidad de métodos para instalar MySQL y más en un sistema con GNU/Linux, como es el caso del ordenador que va a realizar la función de servidor de esta

2.- Desarrollar una base de datos donde el usuario pueda darse de alta de forma remota por Internet, para jugar en esta aplicación y poder acceder de

En conclusión, con la puesta en marcha del sistema de información se pretende agilizar y homogenizar el tratamiento de los datos administrativos y clínicos del paciente en

- El primer fichero (“index.php”) es consultado por la aplicación móvil cuando el usuario presiona sobre “Comenzar” de la aplicación, en ese momento, el script se encarga