Hola amigos que tal, en esta entrega les traigo el como accesar a una base de datos (MySQL) desde el iPhone, a través de un WebService. En el ejemplo hago uso de DataSets, Procedimientos Almacenados, DataAdapters y DataRows, algunos se preguntaran ¿Qué son todas esas cosas? Bueno pues a continuación tratare de dar una breve explicación de cada uno de los elementos.
Un DataSet es un modo desconectado de nuestra base de datos, los DataSets nos permiten recoger información, actualizar datos, eliminarlos, añadirlos, etc…
Como ya habrán intuido un DataSet es una copia en memoria del modelo de nuestra base de datos por lo tanto tenemos tablas, renglones columnas etc. Existen 3 formas con las cuales podemos trabajar con los DataSets
Esta es una breve introducción al DataSet y no estoy cubriendo todo lo que puede hacer este increíble objeto, de hecho esta es una de las mayores ventajas que tiene .NET sobre cualquier otra tecnología. Si quieren buscar más información sobre este objeto, les recuerdo que Google it´s your friend, existe bastante información y ejemplos de los diferentes usos que tiene este objeto
.
Un DataAdapter no es más que un puente entre la base de datos y el DataSet, este objeto se encarga de recibir la información de la base de datos y darle el formato adecuado para llenar el DataSet.
Un objeto DataRow como su nombre lo indica es un renglón de un DataTable, este se utiliza para extraer los valores de un reglón completo de una tabla, en el video queda creo yo un poco más claro su uso.
Los Procedimientos almacenados son características que vienen a partir de MySQL 5.0. Un procedimiento almacenado son un conjunto de comandos SQL que se almacenan en el servidor. Una vez hechos, los clientes no necesitan saber los comandos individuales para obtener la informacion necesaria si no que solo le mandan los parametros necesarios al servidor MySQL y el servidor se encarga de extraer la informacion necesaria solamente con los datos que el cliente le mando.
Algunos casos en que los procedimientos almacenados pueden ser muy útiles:
Los procedimientos almacenados son muy parecidos a las funciones que realizamos en una clase de .NET, nosotros le mandamos los parámetros necesarios a la función, nosotros no sabemos el funcionamiento interno de esa función pero si sabemos que nos regresara la información que necesitamos. Esto reduce drásticamente el tráfico entre el servidor de base de datos y el cliente, ya que en vez de mandarle muchísimas cadenas string de consultas SQL, solo le mandamos parámetros a esa función.
Bueno espero les sirva el video para sus futuros proyectos, verán que es bastante sencillo. Ya saben cualquier duda, comentario, sugerencia la pueden poner aquí y tratare de responder lo mas rápido posible. Saludos!
Acceso a MySQL desde el iPhone desde cero utilizando monotouch from Alex Soto on Vimeo.

Categories
Tag Cloud
Blog RSS
Comments RSS
Last 50 Posts
Back
Void « Default
Life
Earth
Wind
Water
Fire
Light 
Acceso a MySQL desde el iPhone utilizando MonoTouch C# desde cero…
Thank you for submitting this entry – Trackback from MonoTouch.Info…
[...] This post was mentioned on Twitter by KodiakMx and Samuel Arellano, Roger Navarro Perez. Roger Navarro Perez said: RT @EnriqueAguilar: Aportación de @dalexsoto de WebService con MySQL e invocado por IPhone en C# con #MonoTouch http://bit.ly/bxM8F9 [...]
Hola Alex,
soy alex de España, jejeje ahora registrado jijij
. Oye voy a mirar el gran tutorial que has colgado y te comentaré que tal, oki? Queria volver a darte la enhorabuena por el manual realizado en este post.
Seguimos hablando!
Saludos,
Creps (alex)
Esta bien Alex, espero tus comentarios amigo. Saludos!!
Estoy teniendo algunos problemas con las clases, bueno más que nada con las tareas que son para manejarme con diferentes vistas en el iphone. Si quiero que vaya a otra pantalla (view) etc… nose si es que en Mono todavía no está implementado o va a ser que yo todavía no lo saco. ¿Crees que seria bueno hacer un pequeño tutorial para trabajar con diferentes ventanas o tabs?
Una vez más, enhorabuena crack!! ;-D
Saludines!
Alex.
Hola Alex, Claro que si hago un tuto con respecto a los views y subviews en monotouch, solo que este tema es muy extenso, ya que existen muchisimas maneras de manejarlas, y mas que nada depende mucho lo que quieras manejar, por ejemplo con este codigo puedes detectar las vistas y las subvistas que tengas cargadas
foreach(var view in this.window.Subviews) { Console.WriteLine ("View" + view.ToString()); foreach(var subView in this.view.Subviews) { Console.WriteLine ("SubView: " + subView.ToString()); } }Dame unos días en lo que armo un buen ejemplo de vistas y subvistas para poder publicarlo va?
Saludos Alex
oooou yeaah! don’t worry!
si que estaría bien un tuto de ejemplo con vistas, subvistas y tabs para asi tener bien clara la teoria y saber estructurar bien las aplicaciones en mono.
Enhorabuena Alex!
Saludos,
Alex
Hola, Alex me inscribi a tu blog solo para felicitarte por tu sitio y la tematica .
Con cual programa creastes tu sitio?
Hola se llama wordpress
saludos
Muy buen toturial gracias, una duda para el desarrollo en iPhone utilizas mono Touch?
Hola Jose Luis primero que nada bienvenido al blog, respondiendo a tu pregunta, te confirmo que si estoy utilizando MonoTouch, hasta el momento se me hace la mejor alternativa que hay para el desarrollo en iPhone, y mas si es que ya tenemos experiencia sobre la plataforma .NET. Saludos Jose Luis
OK, gracias por responder cuanto te costo la luicencia o es de prueba
Hola nuevamente Jose Luis
Mira de MonoTouch existen 3 tipos de licencias, la Professional que cuesta $399 Dolares, La Enterprise que cuesta $999 Dolares y la Enterprise 5 que cuesta $3999 dolares, pero existe la version de prueba de MonoTouch que trae todas las caracteristicas disponibles activadas, lo unico que no puedes hacer es un deploy a un iPhone/iPod fisico y no puedes crear tampoco el empaquetado para mandar tu aplicacion a la app store.
Te invito a que visites la siguiente pagina donde podras encontrar mas informacion al respecto http://monotouch.net/Store
Saludos
Gracias, por favor si me puedes contestar a una pregunta que te hice en el primer post de hola mundo. SAludos esta interesante este rollo.
Listo Jose Luis ya te respondi. Saludos
Que barbaro, de nuevo gracias.
Hola Alex!!
Como va todo? por aqui con ganas de seguir leyendo tus grandes tutoriales.
Vas a poder realizar un tutorial sobre vistas y tabs?
Un saludo muy grande!!
Alex
hola alex,
en primer lugar en hora buena por tus tutoriales.
Pensaba replicar tu ejemplo. He creado una base de datos sencilla y 3-4 procedimintntos sobre tu estilo. El servidor en un ordenador linux y las query funcionan.
Mi pregunta es : para replicar tu aplicacion puedo poner en la parte
MYSQLConnection(server = 10.10.10.1, .. . .. . . )
es decri la direcicon IP del ordenador donde corre el servidor.
Otra cosa, no tengo claro como usar lo que tu llamas System.Data…
Un saludo,
Dome
Hola Alex
Soy nuevo en este blog y me parecio muy interesante tu tutorial de MySQl con MonoDevelop, pero me di cuenta que los requierimientos del monotouch te pide el iPhone SDK 3.2, yo tengo la 3.1.2, Crees que exista incompatibilidad con esta version? o donde puedeo bajar la 3.2 porque ya no se puede conseguir de la pagina de desarrollador de Apple
Saludos
Genial el Post Alex. Habia visto algun otro codigo usando monotouch para acceder a bases de datos locales con sqlite pero no remotas.
De esta manera es super sencillo. lo unico que necesito ya es conectar a una base de datos de sql server en lugar de mySql. Espero que pueda encontrar el adaptor.
De nuevo congrats, un saludo y sobre todo gracias por enseñarnos!!
Buenas,
He estado intentando debuggar una aplicacion e incluso en las mas simples, cuando pongo el breckpoint, la aplicacion se para pero unos 20 segundos despues el debugger deja de funcionar.
He leido por ahi algunos comentarios de gente que le sucede lo mismo.
Queria preguntarte si a ti te pasa lo mismo o si por el contrario has podido depurar tu aplicacion en el simulador
Un saludo y gracias
hola alex,
soy Xavi (desde España),
primero de todo muchisimas gracias por hacer un tutorial tan extenso y bueno como este.
en segundo lugar tengo una consulta, he conseguido crear el webservice y me funciona a la perfeccion si lo ejecuto desde monodevelop, pero yo lo que quiero es extraerlo y ponerlo en el localhost.
lo he intentado pero no hay manera, si lo extraigo todo y lo pongo en localhost, al cargar la pagina me sale el codigo de dentro de la pagina .asmx:
puedes explicarme como lo debo hacer para que funcione si lo alojo en el localhost?
muchisimas gracias!