Si sabes algo de sql, es realmente facil usar las funciones de mysql, hacer $var = _Query($sql,"SELECT * FROM MiTabla"), para obtener unos resultados.
Necesitarias una clausula Select para realizar cualquier consulta.
Y si no sabes nada de nada de sql, lo aprenderas en unos minutos siguiendo esto:
http://www.emesn.com/autoitforum/search ... ywords=sql
http://www.emesn.com/autoitforum/viewto ... 265&p=2909
Bueno puedes empezar con este enlace que es muy simple y no necesitas saber nada de mysql si ya tienes la base de datos creada:
Esto viene de usar autoit con mysql y un server tipo apache.
http://www.emesn.com/autoitforum/viewto ... p=285#p285
Código: Seleccionar todo
#include "MySQL.au3"
$sql = _MySQLConnect("sa","sa","mydb","mywebsite.com") ;usando libreria mysql directamente
$var = _Query($sql,"SELECT * FROM mytable WHERE user = 'pepe'") ; creo un select para buscar los registros de mytable de pepe
;algun msgbox.. si quiero anunciar algo
While NOT $var.EOF ; hace el bucle hasta que llegue al final de la consulta del select
;=>> aqui alguna función que haga algo con los datos la manipulas como texto,
;=>> recuperas el valor de las variables/campos user y telefono con->
MsgBox(0,"Recupere mis datos del Sql","El usuario es " & $var.Fields("user").value & ", y este es su telefono" & $var.Fields("telefono").value)
$var.MoveNext ; mueve al siguiente registro del select
WEnd
_MySQLEnd($sql) ;cierra la conexión
Salu2:)
Edit:
Las base de datos Mysql por mi experiencia, son lo mejorcito, nunca fallan, y muy rápidas y estables sobre todo en LAN (en Internet depende de la linea adsl y del hosting). En Lan, solo hay que instalar un server mysql, (opcional si lo deseas con apache), por ejemplo un xammp.
Un Tutorial muy detallado de como usar base de datos mysql y funciones, mirar donde pone Final Code para copiar el código y pegarlo en el Scite o procesador de textos/IDE. Luego lo ejecutas o compilas como siempre.Mirar aqui:
Tutorial Mysql con ejemplo completo Autoit
El post del autor original cdkid y bajar librería au3 mysql.au3 y plugin-ODBC:
http://www.autoitscript.com/forum/index ... opic=20814
Cuando hago te da error un messagebox en blanco,
Código: Seleccionar todo
#include <sql.au3>
$sql = _MySQLConnect("nodluna","getpass","keys","arkcrew.com")
$SQLCode = "SELECT * FROM licencias"
$TableContents = _Query($sql,$SQLCode)
MsgBox(0,"",$TableContents)
Felicidades, en solo una hora ya eres el rey del mysql, o casi
Código: Seleccionar todo
#include "MySQL.au3"
y ejemplos detallados lo copias y pegas al Scite o a tu procesador de textos, lo guardas y lo ejecutas o compilas..
Este es el código que tiene la tabla:
-- phpMyAdmin SQL Dump
-- version 2.8.2.4
-- http://www.phpmyadmin.net
--
-- Servidor: localhost:3306
-- Tiempo de generación: 02-10-2009 a las 17:11:27
-- Versión del servidor: 5.0.45
-- Versión de PHP: 5.2.6
--
-- Base de datos: `keys`
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `licencias`
--
CREATE TABLE `licencias` (
`Username` varchar(20) NOT NULL,
`Password` varchar(20) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Volcar la base de datos para la tabla `licencias`
--
Tienes que bajarte la librería e instalar el odbc que te viene en el mismo sitio. Solo Instalar y aceptar todo.
El odbc..exe cuando lo instalas, es un complemento para el Windows, para que pueda trabajar con estas bases de datos: http://dev.mysql.com/downloads/connector/odbc/3.51.html
MySQL Connector/ODBC 3.51
Tienes que poner localhost si tienes la base de datos en tu mismo pc. (sale localhost) En vez del dominio de internet.
Código: Seleccionar todo
$sql = _MySQLConnect("nodluna","getpass","keys","localhost")
Intenta usar otras funciones a ver si te devuelve algo la base de datos, por si haces el login bien, como _GetColNames() u otras... de la lista..
Tambien puedes probar otras funciones que no devuelven datos como un insert, para crear nuevos datos o modificar los actuales.._GetColNames() Gets the names of all the columns in the given table
_GetTblNames() Gets the names of all the tables in the database
_GetColvals() Gets all of the values of the specified column
_GetColType() Gets the DATA TYPE of the specified column
_GetColCount() Gets a count of all columns in the specified table
_MySQLTableExists() Find out whether or not a specified table exists
_GetDBNames() Get a list & count of databases on the current server.
Otra opción, es usarlo en local, e instalar un xampp, y alli crear una base de datos y tabla local para testear o practicar las funciones en lan
Al poner este código:
Código: Seleccionar todo
$dbs = _GetDbNames($sql)
For $i in $dbs
MsgBox(0,'',$i)
Next
_MySQLEnd($sql)
2
information_schesma
keys
Si te sale eso es que has hecho lo básico, ya estas dentro de la base de datos!!!
Solo estas a un paso de sacar los valores de los campos con las funciones que usabas.. Llamando a una consulta con el select y recuperando los valores de las variables que genera.
Salu2:)
Edit: Prueba simplemente un código más reducido y comprobar si la base no está vacia (no hay resultado para esa consulta)
Código: Seleccionar todo
$TableContents = _Query ($sql, $SQLCode)
if $TableContents.Eof then
msgbox(0,"No hay datos","vacio")
else
msgbox(0,"Si hay datos Nombre de usuario", $TableContents.Fields ("Username").value)
FileWriteLine("c:\test.txt",$TableContents.Fields("Username").value & @CRLF) ; graba a un fichero de texto el dato
endif
Aqui te sale que la base de datos está vacia!!!!!, En el sqldump tienen que salirte los datos!!
puedes comprobarlo con usando el .EOF que puse antes. Si no hay nada el valor es verdadero, o si llega al final del fichero.
Estos datos han sido tomados de una conversación con arkcrew que translado aqui para uso libre de los autoiters, pon tus aportaciones!. Creditos a arkcrew por colaborar en esta conversación.