Desarrollo para teléfonos moviles

23
1 Desarrollo de aplicaciones para móviles

description

codigos en java scrip

Transcript of Desarrollo para teléfonos moviles

  • 1

    Desarrollo de aplicaciones para

    mviles

  • 2

    MDULO 1 UNIDAD 1

    NIVELACIN BASE DE DATOS

    Qu es una base de datos? ..................................................................................... 3 Bases de Datos Relacionales..................................................................................... 4 Tablas.................................................................................................................... 4 Columnas............................................................................................................... 5 Filas ...................................................................................................................... 5 Valores .................................................................................................................. 5 Campo Llave........................................................................................................... 6 Tipos de datos numricos......................................................................................... 9 Operadores ............................................................................................................ 9 Funciones de clculos ............................................................................................ 10 Lenguaje estructurado de consulta .......................................................................... 11 Creacin de una Base de Datos............................................................................... 11 Creacin de un tabla.............................................................................................. 12 LENGUAJE DE MANIPULACION DE DATOS DE MYSQL (LMD) ............................... 12 SELECT: Selecciona datos de una tabla y devuelve un resultado ................................. 12 INSERT: Inserta nuevos registros en una tabla ......................................................... 16 DELETE: Elimina registros de una tabla .................................................................... 17 UPDATE: Modifica registros de una tabla .................................................................. 18 UPDATE nombre_de_tabla...................................................................................... 18 UPDATE Sueldos SET Importe=2000 WHERE Puesto=Puesto2 ................................... 18 PGINAS DINMICAS CON BASES DE DATOS ........................................................... 19 Qu es PHP? ....................................................................................................... 19 CONCEPTOS BSICOS DE MYSQL Y PHP INTEGRADOS............................................... 20 Conexin al servidor MySQL desde PHP.................................................................... 20 Uso de la consulta SELECT ..................................................................................... 23

  • 3

    Qu es una base de datos? Una base de datos es un sistema para archivar informacin en una computadora cuyo propsito general es mantener informacin y hacer que est disponible cuando se la solicite. Supongamos que en una Base de Datos (de ahora en ms BD) tenemos un listado de todos los telfonos de las personas que viven en Capital Federal, y le hacemos las siguientes preguntas: Cules son los telfonos de todas las personas de apellido Gmez? Como respuesta nos va a dar los telfonos de todos los Gmez de Capital Federal que tenga ingresados. Cul es el nombre de la persona con el nmero de telfono 0223-431-1343? En este caso como respuesta obtendremos vaco ya que la caracterstica indicada es de Mar del Plata, y esta BD slo tiene disponible informacin sobre Capital Federal, por lo tanto no puede encontrar dato alguno que responda a nuestra consulta. Estas preguntas a la BD, se realizan mediante un lenguaje llamado SQL (Structured Query Language Lenguaje Estructurado de Consultas) y la BD nos va a responder con datos o vaco si es que no encontr ningn dato que respondiera a nuestra pregunta. Existen tres grandes tipos de Bases de Datos:

    Relacionales Orientadas a Objetos Lgicas

    Si bien estos tres tipos de BD sirven para organizar la informacin y devolvernos respuestas adecuadas a nuestras preguntas, el nico tipo que realmente se usa en las aplicaciones son las Bases de Datos Relacionales. La no utilizacin de los otros dos tipos se debe a cuestiones avanzadas de programacin porque el desarrollo de programas con ellas es muy complicado.

  • 4

    Bases de Datos Relacionales Este tipo de bases da datos consiste de varios elementos que hay que tener en cuenta:

    Tablas o Columnas o Filas

    Valores

    Campos Llave o Relaciones

    Esquemas

    Tablas Las bases relacionales se componen de relaciones, ms comnmente llamadas tablas. Una tabla es lo que su nombre indica, un cuadro de doble entrada en el cual se relacionan datos. Es bastante parecido a cuando uno guarda informacin en una planilla de clculo: all tambin lo hace en tablas compuestas por Columnas y Filas. Veamos la siguiente tabla, que muestra el ranking mundial de Tenis (los datos estn desactualizados, es solo a modo de ejemplo) Ranking

    puesto nombre apellido edad nacionalidad 1 Roger Federer 25 Suizo 2 Rafael Nadal 20 Espaol 3 Nicolay Davydenko 25 Ucraniano 4 James Blake 26 Estadounidense 5 Ivan Ljubicic 27 Ucraniano 6 Andy Roddick 24 Estadounidense 7 Tommy Robredo 24 Espaol 8 David Nalbandian 24 Argentino 9 Mario Ancic 22 Croata 10 Fenando Gonzlez 26 Chileno

    La tabla tiene un nombre (Ranking), columnas que contienen distintos tipos de datos, y filas, que corresponden una a cada tenista ingresado.

  • 5

    Columnas Cada columna (o campo de la tabla) dentro de una tabla tiene un nombre nico , un tipo de dato y almacenan diferente informacin. Filas Cada fila (o registro) en la tabla Ranking representa a un tenista diferente. Como las filas dependen de una tabla, todas van a tener la misma estructura pero contenidos diferentes entre s. Valores Cada fila esta compuesta de un grupo de valores, los cuales corresponden a cada una de las columnas. Como cada uno corresponde a una columna, su tipo de dato es el indicado por dicha columna.

  • 6

    Diagrama de una Tabla

    Campo Llave Cada fila (o registro) tiene que tener informacin diferente, ya que de otra manera, estaramos duplicando registros. Los campos Llave, son campos (columnas) cuyo contenido va a ser nico a lo largo de toda la tabla, evitando de esta manera la duplicacin de informacin. Supongamos que tenemos la tabla Clientes, con la siguiente informacin:

    nombre apellido direccin telfono

    Pablo Martnez Rivadavia 2564 4567-9852

    Diego Romar Cucha Cucha 3506 4258-6985

    Alfredo Romero Pasco 1151 4587-9856

    Silvia Lanzillotta Crmer 1743 4358-5874

    Adelina Caraibo Charcas 4312 4562-9874

    Pablo Martnez San Pedrito 111 4578-4253

    Diego Gassi Virrey Olaguer 2955 4312-9098

    Jorge Daro Paley Juana Azurduy 1520 4313-4251

    Nicols Moldavsky Campichuelo 462 4125-7689

    Y ahora, supongamos que queremos el telfono de Pablo Martnez. Al efectuar una consulta por nombre y apellido obtenemos el siguiente resultado:

    nombre apellido direccin telfono

    Pablo Martnez Rivadavia 2564 4567-9852

    Pablo Martnez San Pedrito 111 4578-4253

    Lo cual es correcto. Ahora si lo que buscamos es que la consulta devuelva un solo registro, podemos agregar un nuevo campo, = nro_cliente, que represente una identificacin univoca para cada cliente.

  • 7

    Ahora la tabla quedara as:

    Clientes

    nro_cliente nombre apellido direccin telfono 1 Pablo Martnez Rivadavia 2564 4567-9852 2 Diego Romar Cucha Cucha 3506 4258-6985 3 Alfredo Romero Pasco 1151 4587-9856 4 Silvia Lanzillotta Crmer 1743 4358-5874 5 Adelina Caraibo Charcas 4312 4562-9874 6 Pablo Martnez San Pedrito 111 4578-4253 7 Diego Gassi Virrey Olaguer 2955 4312-9098 8 Jorge Daro Paley Juana Azurduy 1520 4313-4251 9 Nicols Moldavsky Campichuelo 462 4125-7689

    Llaves Primarias y Llaves Forneas Dentro de los campos llave, podemos diferenciar dos tipos: Primarias

    o Son campos llave que identifican unvocamente registros que estn dentro de la tabla.

    Forneas

    o Son campos llave que permiten referenciar unvocamente a un registro que est dentro de otra tabla.

    Puede haber ms de una clave primaria o fornea.

  • 8

    Esquemas El conjunto de todos los diseos de las tablas de una BD se llama Esquema. En el Esquema de la BD se muestran todas las tablas, junto con sus campos y llaves primarias y/o forneas. Los esquemas pueden mostrarse mediante diagramas informales (como los que usamos arriba para indicar la relacin entre rdenes y Clientes), Diagramas de Entidad-Relacin, o mediante texto: Clientes(nro_cliente, nombre, apellido, direccin, telfono) Ordenes(nro_pedido, nro_cliente, descripcin, importe) Con subrayado se indica la llave primaria y en cursiva la llave fornea.

  • 9

    Tipos de datos numricos Tipo Definicin

    Integer Valores enteros con signo

    Numeric(n,m) Nmeros reales hasta 18 dgitos (con decimales). N total de dgitos permitidos y m cant. De decimales.

    Decimal(n,m) Idem Numeric

    Float Nro de coma flotante, se utiliza para nros de notacin cientfica

    Char(n) Almacena de 1 a 255 caracteres alfanumricos. Aunque el valor solo contenga 100, el valor real de campo es de 255.

    Varchar(n) Idem char(n), solo que aprovecha el espacio, almacenando solo la cantidad de dgitos realmente utilizada

    Image Almacena imgenes en formato binario , hasta un mximo de 2 GB.

    Text Almacena texto en formato binario, hasta un mximo de 2 Gb de tamao.

    Operadores Los operadores se dividen en: Aritmticos

    + Suma

    - Resta

    * Producto

    / Divisin

    ** ^ Exponenciacin Relacionales

    < Menor que

    Mayor que

    >= Mayor o igual que

    != Distinto

    !< No menor que

    !> No mayor que

  • 10

    Lgicos

    Funciones de clculos

    MAX() Devuelve el valor mximo.

    MIN() Devuelve el valor mnimo.

    SUM() Devuelve el valor de la suma de los valores del campo.

    COUNT() Devuelve el nmero de filas que cumplen la condicin

    AVG() Devuelve el promedio de los valores del campo

    AND

    OR

    NOT

    Los operadores lgicos permiten comparar expresiones lgicas devolviendo siempre un valor verdadero o falso. Los operadores lgicos se evalan de izquierda a derecha.

  • 11

    Lenguaje estructurado de consulta SQL es el lenguaje de consulta universal para Base de Datos. Los mandatos del SQL, se dividen en tres grandes grupos diferenciados:

    DDL (Data Definicin Language) Es el encargado de la definicin de Bases de Datos, tablas, vistas e ndices entre otros.

    DML (Data Manipulation Language)

    Su misin es la manipulacin de datos. A travs de l podemos seleccionar, insertar, eliminar y actualizar datos.

    DCL (Data Control Laguage)

    Es el encargado de la seguridad de la base de datos, en todo lo referente al control de accesos y privilegios entre los usuarios.

    Creacin de una Base de Datos

    CREATE DATABASE NombreDeBaseDeDatos;

    Utilizando funcin de incremento y clave primaria: CREATE TABLE libros ( cdigo int auto_increment, titulo varchar(20), autor varchar(30), editorial varchar(15), primary key (codigo) ); Autoincrement: Se inicia en 1 y se incrementa en 1. Solo puede haber un autoincrement y debe ser la clave primaria.

  • 12

    Creacin de un tabla

    CREATE TABLE `usuarios` (`nombre` VARCHAR( 30 ), `apellido` VARCHAR( 30 ), `FechaNac` DATETIME, `email` VARCHAR( 30 )); LENGUAJE DE MANIPULACION DE DATOS DE MYSQL (LMD) El LMD de MySQL consiste de 4 consultas para recuperar o modificar datos de una base de datos:

    SELECT INSERT DELETE UPDATE

    SELECT: Selecciona datos de una tabla y devuelve un resultado SELECT nombre_de_columna(s) FROM nombre_de_tabla; Para seleccionar todas las columnas de una tabla SELECT * FROM nombre-tabla Para seleccionar datos de una tabla que cumplan determinada condicin: SELECT nombre_de_columna(s) FROM nombre_de_tabla WHERE nombre_de_columna operador valor ;

  • 13

    Para seleccionar datos que cumplan con mas de una condicin SELECT nombre_de_columna(s) FROM nombre_de_tabla WHERE nombre_de_columna operador valor AND|OR nombre_de_columna operador valor ; Operadores que pueden usarse con WHERE Operador Descripcin

    = Igual

    Distinto

    > Mayor que

    < Menor que

    >= Mayor o igual que

  • 14

    Para limitar la cantidad de datos en una consulta SELECT nombre_de_columna(s) FROM nombre_de_tabla LIMIT numero_fila_inicial, numero_de_filas; Donde:

    numero_fila_inicial es desde qu fila de las que nos devolvera queremos empezar

    numero_de_filas es la cantidad de filas que queremos recibir. Mximo y Mnimo valor

    SELECT MAX(Importe) AS Salario Mximo FROM Empleados ; Cantidad de filas de una columna SELECT COUNT(Nombre) FROM Empleados; Para recuperar valores null SELECT * FROM libros WHERE precio IS NULL; Valor promedio SELECT avg(precio) FROM libros WHERE titulo LIKE %php;

  • 15

    Agrupar registros SELECT titulo FROM libros GROUP BY autor Grupo de registros La clusula having permite seleccionar o rechazar un grupo de registros: SELECT editorial, FROM libros WHERE precio is NOT NULL GROUP BY editorial HAVING editorial'Planeta'; Clusula Distinct Indica obviar registros duplicados SELECT DISTINCT autor FROM libros GROUP BY editorial

  • 16

    INSERT: Inserta nuevos registros en una tabla INSERT INTO nombre_de_tabla VALUES (valor1, valor2,....) o INSERT INTO nombre_de_tabla (columna1, columna2,...) VALUES (valor1, valor2,....) Ejemplo: INSERT INTO Empleados VALUES (3, Carlos, Garca) El resultado :

    ID_Empleado Nombre Apellido 01 Juan Prez 02 Diego Rodrguez 03 Carlos Garca

    Valores not null INSERT INTO libros (titulo,autor,editorial,precio) VALUES ('El aleph','Borges','Planeta',null);

    - El atributo NULL, especifica si el campo permite valores nulos. - Si lo acepta, podemos ingresar null al campo cuando desconocemos su

    valor. - Los campos clave primaria, no aceptan nulos.

  • 17

    DELETE: Elimina registros de una tabla

    DELETE * FROM nombre_de_tabla WHERE nombre_de_columna operador valor o DELETE * FROM nombre_de_tabla Tambin se pueden eliminar todas las filas de una tabla: DELETE * FROM nombre_de_tabla Ejemplo: DELETE * FROM Empleados WHERE ID_Empleado=2 La tabla ahora es as:

    ID_Empleado Nombre Apellido 01 Juan Prez 03 Carlos Garca

  • 18

    UPDATE: Modifica registros de una tabla

    UPDATE nombre_de_tabla SET nombre_de_columna=valor WHERE nombre_de_columna operador valor;

    UPDATE Sueldos SET Importe=2000 WHERE Puesto=Puesto2 La tabla ahora es as:

    ID_Empleo Puesto Importe 01 Puesto1 2300 02 Puesto2 2000

  • 19

    PGINAS DINMICAS CON BASES DE DATOS

    Nota: No es requesito de este curso, contar con conocimentos de php, el siguiente apartado, se agrego a modo informativo. En le transcurso del curso, no se pedir practica relacionada con php.

    Incorporar bases de datos a pginas dinmicas con PHP sirve para almacenar informacin en el sitio que puede cambiar dinmicamente. Esta informacin luego se recuperara bajo scripts PHP para mostrarla por pantalla. Ejemplos concretos de esto pueden ser:

    En un Carrito de Compras, los productos y sus caractersticas estaran almacenados en una base de datos, y en el sitio un script PHP recuperara estos datos desde la base de datos para mostrarlos por pantalla.

    En un Libro de Visitas (Guestbook), cada post sera un registro en una tabla de una base de datos.

    En un sistema que necesite comprobacin de Username y Password, habra una tabla en una base de datos que guarde todas las combinaciones Username/Password permitidas.

    Qu es PHP?

    PHP significan PHP: Hypertext Processor - Procesador Previo al Hipertexto. Es un lenguaje de programacin que sirve para hacer pginas de Internet dinmicas, con la posibilidad de combinarlo con bases de datos. Los script de PHP suelen intercalarse en el cdigo HTML de una pgina, y el encargado de procesar esos scripts es el intrprete del servidor web. Funcionamiento. PHP es un lenguaje de lado de servidor. Lo que significa, que lo que el programador codifique en PHP dentro de una pgina de Internet, no va a ser interpretado por el cliente (navegador), si no por un servidor que procese el cdigo y devuelva al cliente el cdigo HTML resultante.

  • 20

    CONCEPTOS BSICOS DE MYSQL Y PHP INTEGRADOS

    Conexin al servidor MySQL desde PHP Cada vez que se vayan a usar bases de datos en una pgina PHP, primero se debe hacer una conexin al servidor MySQL.

    Conexin al servidor MySQL

    La funcin mysql_connect() permite efectuar la conexin con la base de datos. Su resultado se guarda en una variable para luego hacer referencia a esta conexin cuando se la necesite. $Conexion=mysql_connect("servidor","username","password"); Los tres parmetros que tiene son: 1) El servidor donde se est haciendo la conexin. Por ejemplo, localhost o la direccin IP que corresponda. 2) El nombre de usuario de la cuenta que permita acceder al servidor MySQL

    (por ejemplo, root). 3) El password correspondiente a ese nombre de usuario (en el caso de root, no

    hay password y el tercer parmetro se completa con ).

    Esta lnea de cdigo se suele guardar en un archivo aparte (por ejemplo, "connect.php"), que luego se incluir en las pginas donde se necesite usar la conexin establecida. Esto es prctico ya que al mudarnos de hosting los parmetros proporcionados en mysql_connect() es muy probable que cambien.

  • 21

    Cerrar conexin

    La funcin mysql_close(); cierra la conexin con la base. mysql_close();

    Seleccionar una base de datos

    Para seleccionar una base de datos dentro de la conexin establecida, se usa la funcin: mysql_select_db("nombre_de_base_de_datos", $conexion);

    Detener la ejecucin

    La funcin exit() se usa para detener la ejecucin de todo el cdigo PHP de la pgina mostrando por pantalla un mensaje de error. Ejemplo:

  • 22

    Manejo de consultas Una vez establecida la conexin a la base de datos, se puede acceder a los datos almacenados en la misma. A continuacin se listan algunas de las funciones ms usadas para trabajar con MySQL desde PHP:

    mysql_query(query, conexion): Ejecuta una consulta. Se debe usar con 2 parmetros: el primero ser la consulta MySQL y el segundo la conexin utilizada. Si la consulta fue DELETE, UPDATE o INSERT devuelve true o false para saber si se realiz con xito. Si la consulta fue SELECT devuelve el conjunto de filas obtenidas en caso exitoso o false en caso contrario.

    mysql_num_rows(resultado): Permite saber cuntas filas tiene el resultado obtenido en una consulta SELECT.

    mysql_fetch_row(resultado): Recupera los datos que contiene la fila actual dentro del resultado de la consulta SELECT realizada previamente. La variable que guarda la fila ser un vector (array), y para acceder a cada uno de los datos debe usarse el subndice respetando el orden que se le dio a las columnas en la consulta. Por ejemplo, si recuperramos una fila haciendo $fila=mysql_fetch_row($resultado) l luego se accedera a cada columna de esa fila as: $fila[0], $fila[1], etc...

    mysql_fetch_array(resultado): Parecido al mysql_fetch_row, pero el subndice puede ser el nombre de la columna a la que queramos acceder. Por ejemplo, si recuperramos una fila haciendo $fila=mysql_fetch_array($resultado) luego se accedera a cada columna de de la siguiente manera: $fila[Nombre], $fila[Apellido], etc... mysql_free_result(resultado): Libera la memoria consumida por el resultado de la consulta SELECT realizada previamente.

  • 23

    Las consultas a la base de datos se usan exactamente igual que si estuviramos trabajando directamente en algn administrador de MySQL, como por ejemplo el PhpMyAdmin.

    Uso de la consulta SELECT

    Al recuperar datos de una base de datos con la consulta SELECT, luego debemos listarlos en pantalla. Para eso se suelen usar tablas. La primer fila de la tabla sern los ttulos de cada campo, y una segunda fila de esa tabla se repetir por cuantos registros haya recuperado desde la base de datos. El siguiente ejemplo explica cada paso en los comentarios: