Este documento proporciona una introducción a MySQL y phpMyAdmin. Explica que MySQL es un sistema de gestión de base de datos relacional que almacena información en tablas relacionadas entre sí. También describe phpMyAdmin como una herramienta que ofrece una interfaz gráfica para administrar servidores MySQL, incluyendo la creación y gestión de bases de datos, tablas, usuarios y permisos. A continuación, guía al lector en la instalación y uso básico de phpMyAdmin para crear una base de datos de ejemplo con tres tablas y
Tabla de asistentes
Db: Tabla de bases de datos
Host: Tabla de origen de conexión
Tables_priv: Permisos sobre tablas
Columns_priv: Permisos sobre campos
Profiles: Perfiles de seguridad
User_priv: Permisos de usuarios
Funcionamiento:
Se crean usuarios con sus permisos sobre bases de datos, tablas y campos.
Se asignan perfiles de seguridad con los permisos globales.
Se relaciona usuario con perfil a través de la tabla user_priv
De esta
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar y configurar MySQL, utilizar herramientas como phpMyAdmin, el lenguaje SQL y las funciones de PHP para conectarse a la base de datos, realizar consultas y procesar los resultados.
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, conectarse a la base de datos desde PHP usando funciones como mysql_connect(), mysql_query() y mysql_fetch_array(), y el uso del lenguaje SQL para consultas, inserciones, actualizaciones y eliminaciones.
PHPMyAdmin es una herramienta de código abierto escrita en PHP para administrar bases de datos MySQL a través de una interfaz web. Nos permite crear, modificar y eliminar bases de datos, tablas, usuarios y permisos de una forma sencilla. Para usar PHPMyAdmin necesitamos tener instalados Apache, PHP y MySQL en nuestro servidor, y descargar e instalar el archivo de PHPMyAdmin en el directorio raíz del servidor web.
1. SAP HANA es un sistema analítico de alto rendimiento que combina arquitectura basada en filas y columnas, permitiendo OLTP y OLAP en una sola base de datos.
2. El almacenamiento en columnas es más eficiente para consultas analíticas que requieren seleccionar pocas columnas, mientras que el almacenamiento en filas es más flexible.
3. Un esquema en HANA agrupa objetos de base de datos como tablas, paquetes y procedimientos dentro de un espacio de nombres.
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, el lenguaje SQL para interactuar con las bases de datos, y las funciones de PHP para conectarse a MySQL, ejecutar consultas, procesar resultados y cerrar la conexión.
Este documento introduce PHP como un lenguaje de scripting del lado del servidor para crear páginas web dinámicas. Explica brevemente la historia y sintaxis básica de PHP, así como cómo acceder a datos de formularios, usar estructuras de control, funciones, tablas, y bases de datos MySQL. El documento proporciona una guía introductoria completa sobre los conceptos y funcionalidades fundamentales de PHP.
Este documento describe cómo acceder a bases de datos MySQL desde PHP, incluyendo la instalación y configuración de MySQL, el lenguaje SQL, y las funciones de PHP para conectarse a la base de datos, enviar consultas, procesar resultados y cerrar la conexión.
Tabla de asistentes
Db: Tabla de bases de datos
Host: Tabla de origen de conexión
Tables_priv: Permisos sobre tablas
Columns_priv: Permisos sobre campos
Profiles: Perfiles de seguridad
User_priv: Permisos de usuarios
Funcionamiento:
Se crean usuarios con sus permisos sobre bases de datos, tablas y campos.
Se asignan perfiles de seguridad con los permisos globales.
Se relaciona usuario con perfil a través de la tabla user_priv
De esta
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar y configurar MySQL, utilizar herramientas como phpMyAdmin, el lenguaje SQL y las funciones de PHP para conectarse a la base de datos, realizar consultas y procesar los resultados.
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, conectarse a la base de datos desde PHP usando funciones como mysql_connect(), mysql_query() y mysql_fetch_array(), y el uso del lenguaje SQL para consultas, inserciones, actualizaciones y eliminaciones.
PHPMyAdmin es una herramienta de código abierto escrita en PHP para administrar bases de datos MySQL a través de una interfaz web. Nos permite crear, modificar y eliminar bases de datos, tablas, usuarios y permisos de una forma sencilla. Para usar PHPMyAdmin necesitamos tener instalados Apache, PHP y MySQL en nuestro servidor, y descargar e instalar el archivo de PHPMyAdmin en el directorio raíz del servidor web.
1. SAP HANA es un sistema analítico de alto rendimiento que combina arquitectura basada en filas y columnas, permitiendo OLTP y OLAP en una sola base de datos.
2. El almacenamiento en columnas es más eficiente para consultas analíticas que requieren seleccionar pocas columnas, mientras que el almacenamiento en filas es más flexible.
3. Un esquema en HANA agrupa objetos de base de datos como tablas, paquetes y procedimientos dentro de un espacio de nombres.
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, el lenguaje SQL para interactuar con las bases de datos, y las funciones de PHP para conectarse a MySQL, ejecutar consultas, procesar resultados y cerrar la conexión.
Este documento introduce PHP como un lenguaje de scripting del lado del servidor para crear páginas web dinámicas. Explica brevemente la historia y sintaxis básica de PHP, así como cómo acceder a datos de formularios, usar estructuras de control, funciones, tablas, y bases de datos MySQL. El documento proporciona una guía introductoria completa sobre los conceptos y funcionalidades fundamentales de PHP.
Este documento describe cómo acceder a bases de datos MySQL desde PHP, incluyendo la instalación y configuración de MySQL, el lenguaje SQL, y las funciones de PHP para conectarse a la base de datos, enviar consultas, procesar resultados y cerrar la conexión.
Este documento describe cómo acceder a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, el lenguaje SQL y las funciones de PHP para conectarse a la base de datos, enviar consultas y procesar los resultados.
Este documento proporciona instrucciones para crear una aplicación web con autenticación de inicio de sesión en Android usando MySQL como base de datos, PHP para servicios web y Android Studio. Se explica cómo crear una base de datos y tabla, agregar registros, configurar archivos PHP, dependencias de Android y permisos en el manifiesto para conectividad y tráfico de datos, y definir una función de inicio de sesión en el archivo Main_Activity.kt.
PHP Tema 4 - Acceso a bases de datos MySQL en PHPSpacetoshare
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, y describe las principales funciones de PHP para conectarse a una base de datos, realizar consultas SQL, procesar resultados y cerrar la conexión. También incluye ejemplos sencillos de cómo mostrar datos almacenados en una tabla de noticias.
El documento habla sobre PHP y el acceso a bases de datos. Explica que PHP puede conectarse a casi todos los tipos de bases de datos y se enfoca en MySQL. Describe cómo instalar MySQL, incluyendo la descarga, descompresión e instalación del paquete. También explica cómo acceder a MySQL mediante el intérprete SQL y a través de PHP para visualizar tablas.
Este documento describe cómo acceder a bases de datos MySQL desde PHP. Explica cómo instalar y configurar MySQL y phpMyAdmin, el lenguaje SQL y las funciones de PHP para conectarse a la base de datos, enviar consultas y procesar resultados. También presenta ejemplos prácticos de inserción, actualización y eliminación de datos, y consultas avanzadas con paginación y filtrado de resultados.
Este documento proporciona una introducción al lenguaje de programación PHP y a la base de datos MySQL. Explica que PHP es un lenguaje de servidor que permite incrustar código en páginas HTML, mientras que MySQL es una base de datos relacional gratuita y de código abierto ampliamente utilizada. Además, ofrece ejemplos básicos de código PHP y comandos SQL para interactuar con MySQL.
El documento describe cómo los sitios web han evolucionado de usar documentos HTML estáticos a aplicaciones dinámicas que interactúan con bases de datos. Se mencionan tecnologías como PHP, JDBC y APIs que permiten la integración de bases de datos en el web de forma más sencilla que antes. El documento también cubre el uso de lenguajes de programación con soporte en base de datos para construir aplicaciones web poderosas.
PHP es un lenguaje de programación interpretado y de propósito general, especialmente usado para el desarrollo web y que permite crear páginas dinámicas. PHP se ejecuta en el servidor, procesando el código PHP insertado en los documentos, antes de que estos sean enviados al navegador del cliente.
Como desarrollar-un-sistema-en-php-paso-a-pasocampucss
Este documento proporciona una guía paso a paso para desarrollar un sistema en PHP. Explica cómo instalar las herramientas necesarias como un servidor web, PHP y un manejador de base de datos. Luego guía al lector en el desarrollo de páginas PHP sencillas para listar, agregar y eliminar registros de una tabla de alumnos como ejemplo práctico. Finalmente, presenta conceptos básicos de SQL y buenas prácticas de programación en PHP.
Este documento introduce los conceptos básicos de acceso a bases de datos MySQL desde PHP, incluyendo conectarse a MySQL, ejecutar consultas SQL, procesar resultados y cerrar la conexión. Explica funciones PHP clave como mysql_connect(), mysql_query() y mysql_fetch_array(), y proporciona ejemplos de consultas simples, inserciones, actualizaciones y eliminaciones de datos. También presenta cuatro ejercicios prácticos para ilustrar diferentes operaciones con bases de datos.
Este documento presenta un curso introductorio sobre PostgreSQL. Cubre temas como la arquitectura de PostgreSQL, la instalación, la creación de bases de datos y tablas, la inserción y manipulación de datos, y el uso de consultas. También explica el uso del programa cliente psql y herramientas de administración como pgAdmin.
Este documento proporciona una introducción a HTML5. Resume las nuevas características clave como etiquetas estructurales mejoradas, marcado de datos semánticos, nuevos tipos de formularios, APIs de JavaScript para almacenamiento local y comunicaciones, y tecnologías como WebSockets que permiten comunicación bidireccional entre servidores y navegadores. También discute el uso de aplicaciones cache y almacenamiento local para permitir que las aplicaciones funcionen sin conexión a Internet.
Este documento presenta una introducción a CakePHP, un framework de código abierto para el desarrollo web en PHP. Explica que CakePHP es una estructura de librerías y clases que permite a los desarrolladores crear aplicaciones web de forma rápida y flexible. También describe los requisitos de instalación, los conceptos básicos del patrón MVC en el que se basa CakePHP, y cómo instalar y configurar CakePHP en un servidor web.
Este documento proporciona instrucciones para instalar EasyPHP y Oscommerce en una computadora local. Explica cómo descargar e instalar EasyPHP, crear una base de datos en MySQL, subir los archivos de Oscommerce al servidor local, e instalar y configurar Oscommerce. También incluye pasos para agregar fabricantes, categorías y productos al sitio de comercio electrónico de Oscommerce.
Este documento presenta información sobre una base de datos en Access 2010 desarrollada por Luis Miguel Guevara Alferez, Andrés Fernando Vergel Molina y Nicolás Esguerra del Departamento Integrado de Informática e Tecnología de Bogotá en el año 2015. Incluye secciones sobre introducción a bases de datos, objetivos, planteamiento del problema, marco teórico, materiales y metodología, y desarrollo del proyecto.
Este documento proporciona una introducción al framework CakePHP. Explica que CakePHP sigue el patrón MVC y requiere PHP y una base de datos. Detalla las carpetas y archivos clave de CakePHP así como sus convenciones para nombres, controladores, modelos, vistas y más, las cuales automatizan mucho del desarrollo.
Este documento proporciona consejos sobre cómo mejorar el rendimiento de Magento. Explica cómo instalar Magento de forma básica, identificar cuellos de botella mediante herramientas como XHProf y Onestic Profiler, y realizar pruebas de carga. También recomienda el uso de caché externa como Varnish o Ezapps Zoom, y escalar la infraestructura separando la aplicación del servidor de base de datos.
Este documento describe cómo crear una base de datos y una tabla en MySQL usando la herramienta MySQL Administrator y cómo conectar la base de datos desde NetBeans 6.7.1 sin usar el asistente. Explica los pasos para descargar e instalar las herramientas necesarias como MySQL Server, MySQL Administrator y el conector JDBC de MySQL. Luego guía al lector a través de la creación de una base de datos y una tabla usando la interfaz gráfica de MySQL Administrator y finalmente muestra cómo agregar el conector JDBC en NetBeans para conectarse a la base
El documento describe el algoritmo de backtracking para resolver problemas mediante búsqueda exhaustiva de todas las posibles soluciones. Explica que backtracking abandona cada solución candidata que no puede completarse y provee ejemplos como Sudoku, el problema de las 8 reinas y cruzar un río con misioneros y caníbales.
Este documento describe un modelo externo para el control de personal de una empresa. Incluye entidades como Personal, Asistencia, Vacaciones, Permisos, Sección, Turno de Horas, Departamento, Horario, Item, Cargo y Turno. Cada entidad tiene un identificador único y varios atributos como nombre, fecha, hora y descripción, según corresponda a cada tipo de entidad.
Este documento describe cómo acceder a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, el lenguaje SQL y las funciones de PHP para conectarse a la base de datos, enviar consultas y procesar los resultados.
Este documento proporciona instrucciones para crear una aplicación web con autenticación de inicio de sesión en Android usando MySQL como base de datos, PHP para servicios web y Android Studio. Se explica cómo crear una base de datos y tabla, agregar registros, configurar archivos PHP, dependencias de Android y permisos en el manifiesto para conectividad y tráfico de datos, y definir una función de inicio de sesión en el archivo Main_Activity.kt.
PHP Tema 4 - Acceso a bases de datos MySQL en PHPSpacetoshare
Este documento trata sobre el acceso a bases de datos MySQL desde PHP. Explica cómo instalar MySQL y phpMyAdmin, y describe las principales funciones de PHP para conectarse a una base de datos, realizar consultas SQL, procesar resultados y cerrar la conexión. También incluye ejemplos sencillos de cómo mostrar datos almacenados en una tabla de noticias.
El documento habla sobre PHP y el acceso a bases de datos. Explica que PHP puede conectarse a casi todos los tipos de bases de datos y se enfoca en MySQL. Describe cómo instalar MySQL, incluyendo la descarga, descompresión e instalación del paquete. También explica cómo acceder a MySQL mediante el intérprete SQL y a través de PHP para visualizar tablas.
Este documento describe cómo acceder a bases de datos MySQL desde PHP. Explica cómo instalar y configurar MySQL y phpMyAdmin, el lenguaje SQL y las funciones de PHP para conectarse a la base de datos, enviar consultas y procesar resultados. También presenta ejemplos prácticos de inserción, actualización y eliminación de datos, y consultas avanzadas con paginación y filtrado de resultados.
Este documento proporciona una introducción al lenguaje de programación PHP y a la base de datos MySQL. Explica que PHP es un lenguaje de servidor que permite incrustar código en páginas HTML, mientras que MySQL es una base de datos relacional gratuita y de código abierto ampliamente utilizada. Además, ofrece ejemplos básicos de código PHP y comandos SQL para interactuar con MySQL.
El documento describe cómo los sitios web han evolucionado de usar documentos HTML estáticos a aplicaciones dinámicas que interactúan con bases de datos. Se mencionan tecnologías como PHP, JDBC y APIs que permiten la integración de bases de datos en el web de forma más sencilla que antes. El documento también cubre el uso de lenguajes de programación con soporte en base de datos para construir aplicaciones web poderosas.
PHP es un lenguaje de programación interpretado y de propósito general, especialmente usado para el desarrollo web y que permite crear páginas dinámicas. PHP se ejecuta en el servidor, procesando el código PHP insertado en los documentos, antes de que estos sean enviados al navegador del cliente.
Como desarrollar-un-sistema-en-php-paso-a-pasocampucss
Este documento proporciona una guía paso a paso para desarrollar un sistema en PHP. Explica cómo instalar las herramientas necesarias como un servidor web, PHP y un manejador de base de datos. Luego guía al lector en el desarrollo de páginas PHP sencillas para listar, agregar y eliminar registros de una tabla de alumnos como ejemplo práctico. Finalmente, presenta conceptos básicos de SQL y buenas prácticas de programación en PHP.
Este documento introduce los conceptos básicos de acceso a bases de datos MySQL desde PHP, incluyendo conectarse a MySQL, ejecutar consultas SQL, procesar resultados y cerrar la conexión. Explica funciones PHP clave como mysql_connect(), mysql_query() y mysql_fetch_array(), y proporciona ejemplos de consultas simples, inserciones, actualizaciones y eliminaciones de datos. También presenta cuatro ejercicios prácticos para ilustrar diferentes operaciones con bases de datos.
Este documento presenta un curso introductorio sobre PostgreSQL. Cubre temas como la arquitectura de PostgreSQL, la instalación, la creación de bases de datos y tablas, la inserción y manipulación de datos, y el uso de consultas. También explica el uso del programa cliente psql y herramientas de administración como pgAdmin.
Este documento proporciona una introducción a HTML5. Resume las nuevas características clave como etiquetas estructurales mejoradas, marcado de datos semánticos, nuevos tipos de formularios, APIs de JavaScript para almacenamiento local y comunicaciones, y tecnologías como WebSockets que permiten comunicación bidireccional entre servidores y navegadores. También discute el uso de aplicaciones cache y almacenamiento local para permitir que las aplicaciones funcionen sin conexión a Internet.
Este documento presenta una introducción a CakePHP, un framework de código abierto para el desarrollo web en PHP. Explica que CakePHP es una estructura de librerías y clases que permite a los desarrolladores crear aplicaciones web de forma rápida y flexible. También describe los requisitos de instalación, los conceptos básicos del patrón MVC en el que se basa CakePHP, y cómo instalar y configurar CakePHP en un servidor web.
Este documento proporciona instrucciones para instalar EasyPHP y Oscommerce en una computadora local. Explica cómo descargar e instalar EasyPHP, crear una base de datos en MySQL, subir los archivos de Oscommerce al servidor local, e instalar y configurar Oscommerce. También incluye pasos para agregar fabricantes, categorías y productos al sitio de comercio electrónico de Oscommerce.
Este documento presenta información sobre una base de datos en Access 2010 desarrollada por Luis Miguel Guevara Alferez, Andrés Fernando Vergel Molina y Nicolás Esguerra del Departamento Integrado de Informática e Tecnología de Bogotá en el año 2015. Incluye secciones sobre introducción a bases de datos, objetivos, planteamiento del problema, marco teórico, materiales y metodología, y desarrollo del proyecto.
Este documento proporciona una introducción al framework CakePHP. Explica que CakePHP sigue el patrón MVC y requiere PHP y una base de datos. Detalla las carpetas y archivos clave de CakePHP así como sus convenciones para nombres, controladores, modelos, vistas y más, las cuales automatizan mucho del desarrollo.
Este documento proporciona consejos sobre cómo mejorar el rendimiento de Magento. Explica cómo instalar Magento de forma básica, identificar cuellos de botella mediante herramientas como XHProf y Onestic Profiler, y realizar pruebas de carga. También recomienda el uso de caché externa como Varnish o Ezapps Zoom, y escalar la infraestructura separando la aplicación del servidor de base de datos.
Este documento describe cómo crear una base de datos y una tabla en MySQL usando la herramienta MySQL Administrator y cómo conectar la base de datos desde NetBeans 6.7.1 sin usar el asistente. Explica los pasos para descargar e instalar las herramientas necesarias como MySQL Server, MySQL Administrator y el conector JDBC de MySQL. Luego guía al lector a través de la creación de una base de datos y una tabla usando la interfaz gráfica de MySQL Administrator y finalmente muestra cómo agregar el conector JDBC en NetBeans para conectarse a la base
El documento describe el algoritmo de backtracking para resolver problemas mediante búsqueda exhaustiva de todas las posibles soluciones. Explica que backtracking abandona cada solución candidata que no puede completarse y provee ejemplos como Sudoku, el problema de las 8 reinas y cruzar un río con misioneros y caníbales.
Este documento describe un modelo externo para el control de personal de una empresa. Incluye entidades como Personal, Asistencia, Vacaciones, Permisos, Sección, Turno de Horas, Departamento, Horario, Item, Cargo y Turno. Cada entidad tiene un identificador único y varios atributos como nombre, fecha, hora y descripción, según corresponda a cada tipo de entidad.
Este documento presenta un capítulo sobre la teoría de la complejidad algorítmica. Introduce conceptos como complejidad polinomial vs no determinista, y usa ejemplos como la suma y multiplicación binarias para ilustrar la diferencia. También explica problemas NP-completos como el problema de la mochila, cuya resolución es exponencial pero tiene aplicaciones en criptografía. Finalmente, señala que los problemas más usados en criptografía asimétrica son la factorización de números grandes y el problema del logaritmo discreto.
Este documento describe comandos básicos de MYSQL como arrancar servidores MYSQL, consultar y modificar bases de datos y tablas, crear e insertar registros, y mostrar información sobre bases de datos, tablas, columnas e índices. Explica comandos como CREATE DATABASE, SELECT, INSERT, ALTER TABLE, DROP TABLE, SHOW DATABASES y SHOW TABLES entre otros.
Este documento presenta una introducción a los fundamentos de la programación con PHP. Explica brevemente la historia y características del lenguaje PHP, así como sus principales elementos como variables, tipos de datos, operadores, estructuras de control y ejemplos de código. El objetivo es proporcionar una guía básica para aprender a programar usando PHP.
1) El documento introduce conceptos básicos sobre PHP como lenguaje de programación que se ejecuta en el servidor y permite acceder a recursos como bases de datos. 2) Explica cómo intercalar código PHP en páginas HTML y muestra un ejemplo sencillo de bucle. 3) Define variables, operadores aritméticos, de comparación y lógicos para realizar operaciones con variables.
Este documento presenta los fundamentos de programación con PHP. Explica las generalidades del lenguaje, su historia, cómo programar en PHP y sus características principales como comentarios e instrucciones. Luego describe los elementos clave del lenguaje como variables, tipos de datos, operadores y estructuras de control como condicionales, ciclos y switch. Finalmente incluye ejemplos de uso de operadores básicos, condicionales, ciclos y manejo de controles en PHP.
Este documento describe un curso de desarrollo web con PHP y Laravel. El curso enseña sobre PHP, uno de los lenguajes más populares para crear sitios web dinámicos, y Laravel, un popular framework de PHP. A lo largo de cinco sábados, el curso cubre temas como programación orientada a objetos, conexión a bases de datos, MVC, autenticación, y desarrollo de aplicaciones con Laravel. El objetivo es que los participantes aprendan a desarrollar aplicaciones web modernas de forma rápida y profes
Buscador de Eventos y Fiestas en España - Buscafiestaholabuscafiesta
Buscafiesta.es es el buscador líder en España para fiestas y eventos, diseñado para satisfacer las necesidades tanto de organizadores como de asistentes. Este innovador software ofrece una plataforma integral que permite a los organizadores de eventos añadir, gestionar y promocionar sus actividades de manera totalmente autónoma, facilitando la visibilidad y escalabilidad de sus eventos.
Buscafiesta.es no solo conecta a los organizadores con su público objetivo, sino que también ofrece herramientas de marketing y análisis que ayudan a maximizar el impacto de cada evento. Ya sea para una fiesta local, un concierto multitudinario o un evento corporativo, Buscafiesta.es es la solución definitiva para hacer de cada evento un éxito rotundo.
1. Material bajo licencia Creative Commons
PHP y MySQL
Aplicaciones Web/Sistemas Web
Juan Pavón Mestras
Dep. Ingeniería del Software e Inteligencia Artificial
Facultad de Informática
Universidad Complutense Madrid
Breve introducción a MySQL con phpMyAdmin
PHP
2. Persistencia de datos
La información se guarda para volver a utilizarla
Mecanismos
Ficheros
• Almacenamiento básico
• Acceso secuencial o aleatorio
Bases de datos
• Información estructurada
• Relaciones
• Búsquedas
• Acceso concurrente
• Control de acceso a la información
• Integridad
Juan Pavón - UCM 2012-13 PHP 3
MySQL
Sistema de Gestión de Base de Datos Relacional
La información se guarda en tablas
• Una tabla es una colección de datos relacionados
• Una tabla consta de columnas (campos) y filas (registros)
• Las tablas se enlazan por relaciones entre columnas
Implementa casi todo el estándar SQL (Structured Query
Language)
Código abierto
Actualmente de Oracle, que adquirió Sun, que tenía MySQL AB
Escalable
Aplicaciones pequeñas y grandes (millones de registros)
Transacciones, Multiusuario
Eficiente: Multihilo, varias técnicas de hash, b-tree, etc.
Conexión al servidor MySQL con sockets TCP/IP
Esto permite conectarla con casi cualquier plataforma
Juan Pavón - UCM 2012-13 PHP 4
3. phpMyAdmin
Herramienta que ofrece una interfaz gráfica para la
administración del servidor MySQL
Configuración del servidor y las bases de datos
Gestionar (crear, modificar, borrar) las bases de datos, tablas,
campos, relaciones, índices, etc.
Consultas con SQL, y mediante ejemplos (query by example)
Definir usuarios y asignar permisos
Realizar copias de seguridad
Crear gráficos (PDF) del esquema de la base de datos
Exportar a muchos formatos (documentos de texto, hojas de cálculo)
En XAMPP se puede invocar en http://localhost/phpmyadmin/
Configuración
Fichero config.inc.php (en el directorio raíz de phpMyAdmin)
Pero más recomendable a través de la interfaz web de phpMyAdmin en
http://www.dominio.com/phpMyAdmin/setup
Usar el password del root de mySQL, que se aplica también a ese
mismo usuario en phpMyAdmin (efectivo tras rearrancar mySQL)
Juan Pavón - UCM 2012-13 PHP 5
phpMyAdmin – Página inicial
Juan Pavón - UCM 2012-13 PHP 6
4. Usuarios de MySQL
Conviene crear un nuevo usuario para cada sitio web
Cada sitio web tendrá sus propias bases de datos
El usuario root solo se debe usar para administración
Entrar en phpMyAdmin como usuario root
En principio no tiene password, pero habrá que ponerlo, por seguridad
A continuación crear un nuevo usuario
• por ejemplo para el sitio del ejemplo a continuación: tienda
• Pestaña Users-> Add user
• En la ventana que aparece indicar
• Nombre de usuario: tienda
• Host (local si estáis desarrollando con XAMPP en vuestro PC)
• Password: tienda
• Crear una base de datos para el nuevo usuario
• Marcar la casilla Create database with same name and grant all privileges
• No activar privilegios globales
Salir de la sesión como root
Entrar con el nuevo usuario
Se puede trabajar con la nueva base de datos
Juan Pavón - UCM 2012-13 PHP 7
Creación de una base de datos con phpMyAdmin
Como root: Create database en la pestaña Database
Indicar un nombre para la base de datos
La opción "collation" indica el conjunto de reglas de comparación y
ordenación del texto en la base de datos, que dependerá del idioma
• Por ejemplo, utf8_general_ci que vale para muchos idiomas y no es
sensible a mayúsculas y minúsculas
Juan Pavón - UCM 2012-13 PHP 8
5. Manejo de la base de datos con phpMyAdmin
Al seleccionar la base de datos creada aparecen las operaciones
que se pueden realizar con ella
Se pueden añadir permisos (pestaña Privileges) para que otros usuarios
puedan usar la base de datos
En Structure se pueden crear las tablas que definen el esquema
de la base de datos
Juan Pavón - UCM 2012-13 PHP 9
Ejemplo sencillo de base de datos: Tienda
Juan Pavón - UCM 2012-13 PHP 10
Clientes
nif*
nombre
direccion
email
telefono
Productos
id *
nombre
precio
descripcion
Pedidos
numero *
fecha
cliente
producto
cantidad
*Clave primaria (los objetos en esta columna son únicos y no nulos). Será indexada.
**Se pueden definir también índices para mejorar la eficiencia de las búsquedas
***Las claves foráneas (foreign keys) identifica una columna (o grupo de
columnas) en una tabla que se refiere a otra columna (o grupo de columnas) en otra
tabla, generalmente la clave primaria en la tabla referenciada.
Contribuyen a gestionar la integridad de la base de datos: no se puede crear un
pedido de un cliente o un producto que no existan.
Las claves foráneas deberían indexarse porque se usarán para seleccionar registros
con frecuencia.
6. Creación de tablas
La base de datos consta de tablas
Cada una con una serie de columnas (campos)
Cada campo tendrá asociado un tipo:
• Enteros: TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT
• Números reales: DECIMAL, DOUBLE, FLOAT, REAL
• Booleanos: BOOLEAN
• Fecha: DATE, TIME, YEAR
• Strings: VARCHAR (hasta 256 caracteres), TEXT
Como Storage Engine conviene usar InnoDB para poder gestionar
relaciones entre tablas
Como Collation conviene usar utf8_general_ci
Juan Pavón - UCM 2012-13 PHP 11
Creación de tablas
La primera tabla es la de clientes, con cinco campos
nif: servirá como primary key (el nif es único)
nombre: de empresa o de persona (sería nombre + apellidos)
• Se puede indexar para hacer búsquedas por este campo
direccion
email
telefono: como string para permitir uso de caracteres no numéricos
Juan Pavón - UCM 2012-13 PHP 12
7. Creación de tablas
Crear dos tablas más:
productos
pedidos
Juan Pavón - UCM 2012-13 PHP 13
autoindex
Definir relaciones entre tablas
Usar la pestaña Designer para ver gráficamente las tablas
Se pueden recolocar las tablas
Para añadir una relación seleccionar el botón Create relation
• Seleccionar la primary key de la tabla clientes: nif
• Seleccionar la foreign key en la tabla pedidos: cliente
• Aparece una ventana para seleccionar qué hacer para preservar la
integridad de las referencias, con las siguientes operaciones:
• DELETE: seleccionar RESTRICT
• UPDATE: seleccionar CASCADE
• La restricción más adecuada en la mayoría de los casos es evitar realizar
borrados en cascada y actualizar en cascada
• La relación queda establecida y aparece en el gráfico
Para salvar el diagrama, usar el botón Save
Juan Pavón - UCM 2012-13 PHP 14
8. Definir relaciones entre tablas
Si falla el establecimiento de una relación, comprobar que:
Ambas usan tablas InnoDB como storage engine
No hay registros en las tablas
• Si los hubiera hay que comprobar que concuerdan para mantener la
integridad de las referencias
El campo en la primera tabla es una clave primaria
El campo correspondiente en la segunda tabla está indexado
Ambos campos tienen exactamente los mismos tipos de datos
• Si son numéricos, ambos deben ser unsigned (o ninguno)
Una vez que se haya establecido la relación no será posible
introducir registros en la segunda tabla a menos que se
correspondan en el campo de la relación con el de la primera
tabla
¿Qué ocurre en la segunda tabla cuando se borra un registro de la
primera tabla?
Juan Pavón - UCM 2012-13 PHP 15
Introducir datos en tablas
Seleccionar la tabla
Seleccionar la pestaña Insert
Introducir datos para los campos correspondientes en Value
También se pueden introducir a través del programa PHP que
recupera la información que un usuario haya introducido en un
formulario de una página web
En la pestaña Browse se pueden ver los registros de la base de
datos y modificar campos de los mismos
Juan Pavón - UCM 2012-13 PHP 16
9. Backup de la base de datos
Export
Conveniente de forma regular
• Especialmente si se hacen muchos cambios
Opciones (seleccionar Custom en Export Method)
• Qué se guarda
• El servidor completo
• Una base de datos entera
• Una tabla
• Estructura o datos, o ambos
• Compresión: ninguna, zipped, gzipped, bzipped
• Formato
• SQL, CSV, Word, Latex, Excel, OpenDoc, PDF, XML, JSON, etc.
El proceso inverso es posible con Import
Juan Pavón - UCM 2012-13 PHP 17
Ejercicios con phpMyAdmin
Instalar phpMyAdmin
Crear la base de datos tienda con las tablas clientes, productos y
pedidos tal como se han definido previamente
Insertar elementos en las tres tablas, primero en clientes y
productos y luego en pedidos
• Comprueba qué ocurre si se intenta introducir un pedido para un
cliente que no existe
Intenta eliminar un cliente que tiene algún pedido
• Observa el efecto de haber definido la política DELETE: RESTRICT
cuando se estableció la FOREIGN KEY
Intenta cambiar el nombre de un producto que tiene algún pedido
• Observa el efecto de haber definido la política UPDATE: CASCADE
cuando se estableció la FOREIGN KEY
Juan Pavón - UCM 2012-13 PHP 18
10. Uso de MySQL con PHP
PHP
Acceso a la base de datos en PHP
Juan Pavón - UCM 2012-13 PHP 20
web Servidor Web dinámico
Servidor Web
Cliente
httpd
Base de
datos
código
HTML
Repositorio
de páginas
Navegador
Intérprete PHP
(Genera HTML)
Consulta
index.php
Busca página index.php
GET index.php
«request»
11. Uso de una base de datos MySQL desde PHP
Con PHP5 se recomienda utilizar la extensión MySQLi (Mysql
improved) en vez de la tradicional Mysql
Permite utilizar las mejoras de las últimas versiones del servidor
MySQL
Interfaz orientada a objetos
Alternativa: PHP Data Objects (PDO)
Interfaz ligera para acceso a bases de datos, con soporte para MySQL
y otros sistemas de gestión de bases de datos
• Un driver específico para cada SGBD
Proporciona una capa de abstracción para el acceso a datos
• Independiente del tipo de SGBD
• No usa la sintaxis SQL
• Orientado a objetos
Juan Pavón - UCM 2012-13 PHP 21
Uso de una base de datos MySQL desde PHP
Normalmente comprende los siguientes pasos:
1. Conexión con el servidor de bases de datos y selección de una base de
datos
• Se obtiene un objeto para operar con la base de datos
2. Uso de la base de datos
• Envío de operación SQL a la base de datos
• Recepción y tratamiento de los resultados
• Liberar memoria de resultados
3. Desconexión
Juan Pavón - UCM 2012-13 PHP 22
12. Conexión con la base de datos
Para utilizar una base de datos hay que indicar el servidor y la
base de datos que se quiere utilizar, con un usuario
$mysqli = new mysqli($hostname, $usuario, $password,$basededatos);
if ( mysqli_connect_errno() ) {
echo "Error de conexión a la BD: ".mysqli_connect_error();
exit();
}
• Devuelve un objeto sobre el que operar con la base de datos
• Si hubiera un error se comprueba con el método
mysqli_connect_errno()
Cuando se deja de utilizar la base de datos conviene cerrar la
conexión al servidor para liberar recursos ordenadamente
$mysqli‐>close();
Juan Pavón - UCM 2012-13 PHP 23
Operaciones SQL en una base de datos MySQL
Las queries SQL se pasan con el método query
$mysqli‐>query("SQL query");
• Devuelve un objeto que permite tratar los resultados
• Devuelve FALSE si hay algún error
• Si se ponen variables PHP en la query, se ponen entre comillas
simples para que la función mysql_query las reemplace por su valor
Juan Pavón - UCM 2012-13 PHP 24
$empresa="Empresa%";
$query="SELECT * FROM clientes WHERE nombre LIKE '$empresa'";
$resultado=$mysqli‐>query($query)
or die ($mysqli‐>error. " en la línea ".(__LINE__‐1));
$numregistros=$resultado‐>num_rows;
echo "<p>El número de clientes con nombre Empresa* es: ",$numregistros,".</p>";
13. Operaciones SQL en una base de datos MySQL
Varios atributos y métodos de la clase mysqli_result facilitan el
tratamiento de los registros obtenidos
$num_rows: Número de registros (filas)
$numfilas=$resultado‐>num_rows;
fetch_array() o fetch_all(): Devuelve todas las filas en un array
asociativo, numérico, o en ambos
• fetch_assoc(): Lo mismo pero como array asociativo
$registro=mysqli‐>fetch_array([modo])
• Argumento opcional para indicar cómo se accede a los registros
• Usando el nombre del campo como índice: MYSQL_ASSOC
• Usando la posición como índice: MYSQL_NUM
• Usando tanto el nombre de campo como la posisicón: MYSQL_BOTH
free(): Libera la memoria asociada al resultado
$resultado‐>free();
Juan Pavón - UCM 2012-13 PHP 25
Operaciones SQL en una base de datos MySQL
Ejemplo: listado de la tabla clientes
Juan Pavón - UCM 2012-13 PHP 26
$query="SELECT * FROM clientes";
$resultado=$mysqli‐>query($query)
or die ($mysqli‐>error. " en la línea ".(__LINE__‐1));
$numregistros=$resultado‐>num_rows;
echo "<p>El número de clientes con nombre Empresa* es: ",$numregistros,".</p>";
echo "<table border=2><tr><th>NIF</th> <th>Nombre</th> <th>Dirección</th>
<th>Email</th> <th>Teléfono</th></tr>";
while ($registro = $resultado‐>fetch_assoc()) {
echo "<tr>";
foreach ($registro as $campo)
echo "<td>",$campo, "</td>";
echo "</tr>";
}
echo "</table>";
$resultado‐>free();
14. SQL
SELECT
Recupera elementos de una tabla o conjunto de tablas (con JOIN)
SELECT campos FROM tabla WHERE campo = valor
• Si se quieren todos los campos, usar *
• Si se omite la cláusula WHERE se tienen todos los campos de la tabla
• Para la condición WHERE se pueden usar varios operadores:
• = <> != < <= > >=
• AND OR NOT
Se pueden recuperar campos de varias tablas
SELECT tabla1.campo1 tabla2.campo2 FROM tabla1, tabla2
WHERE campo3=valor3 AND tabla1.campo1 = tabla2.campo2
También se pueden usar patrones para las condiciones
• % indica cualquier subcadena
SELECT campos FROM tablas WHERE campo3 LIKE patron
• Ejemplo: SELECT nombre FROM clientes WHERE nombre LIKE Juan%
Ordenar: ORDER BY
Para no tener registros duplicados: DISTINCT
SELECT DISTINCT campos FROM tablas WHERE ...
Juan Pavón - UCM 2012-13 PHP 27
SQL
INSERT
Inserta nuevos elementos en una tabla
• Crea un nuevo cliente
INSERT INTO clientes (nif, nombre, direccion, email, telefono)
VALUES ("M3885337J", "Empresa Uno", "Calle Uno, Madrid",
"jefe@empresauno.com", "91 2347898")
UPDATE
Actualiza campos de una tabla
• Modifica el importe del producto "Producto1"
UPDATE productos SET precio = 399.99 WHERE nombre="Producto1"
DELETE
Elimina registros de una tabla
• Elimina pedidos con más de 30 días de antigüedad
DELETE FROM pedidos WHERE fecha < CURDATE()‐10
Juan Pavón - UCM 2012-13 PHP 28
15. Ejercicio
Listar la información de la tabla pedidos indicando el nombre y
NIF del cliente, y el coste de cada pedido (cantidad*precio del
producto)
Definir una función que liste todos los pedidos de un cliente dado
por su nombre
Juan Pavón - UCM 2012-13 PHP 29
Bibliografía
Manual PHP oficial
http://www.php.net/manual/es/index.php
Sitio oficial de phpMyAdmin: http://www.phpmyadmin.net
Introducción sencilla al uso de phpMyAdmin y php con MySQL
http://www.yourwebskills.com/dbbackground.php
http://www.yourwebskills.com/beginningmysql.php
Libros
S. Suehring, T. Converse, J. Park. PHP6 and MySQL Bible. Wiley Pub.
2009
O. Heurtel. PHP y MySQL. Domine el desarrollo de un sitio Web
dinámico e interactivo. Ediciones ENI 2009
M. Delisle. Dominar phpMyAdmin para una administración efectiva de
MySQL. Packt Publishing (2007)
Juan Pavón - UCM 2012-13 PHP 30
16. Apéndice: Interfaz PHP Mysql tradicional
Normalmente comprende los siguientes pasos:
1. Conexión con el servidor de bases de datos
mysql_connect()
2. Selección de una base de datos
mysql_select_db()
3. Uso de la base de datos
• Envío de operación SQL a la base de datos
mysql_query()
• Recepción y tratamiento de los resultados
mysql_num_rows()
mysql_fetch_array()
mysql_free_result()
4. Desconexión del servidor de bases de datos
mysql_close()
Juan Pavón - UCM 2012-13 PHP 31
Conexión con la base de datos
Para utilizar una base de datos hay que:
Conectarse con el servidor que la gestiona
$conexion = mysql_connect($servidor, $usuario, $password)
• Devuelve como resultado un recurso de tipo enlace (la conexión a la
base de datos)
• Si hubiera un error devuelve FALSE
• En caso de error, si se quiere acabar el script se puede poner:
$conexion = mysql_connect($servidor, $usuario, $password) or
die("Error en conexión al servidor MySQL: ".mysql_error());
Seleccionar la base de datos en el servidor
mysql_select_db($basedatos, $conexion)
• La base de datos se especifica en la variable $basedatos
• Devuelve TRUE si todo va bien, FALSE si hay algún error
mysql_select_db($bd, $conexion) or
die ("Error: No se puede usar la base de datos. ".mysql_error());
Juan Pavón - UCM 2012-13 PHP 32
17. Operaciones SQL en una base de datos MySQL
Las queries SQL se pasan con la función
mysql_query("SQL query");
• Devuelve un identificador o TRUE (dependiendo de la instrucción) si
la instrucción se ejecuta correctamente
• Devuelve FALSE si hay algún error
• Si se ponen variables PHP en la query, se ponen entre comillas
simples para que la función mysql_query las reemplace por su valor
Juan Pavón - UCM 2012-13 PHP 33
$query="SELECT * FROM clientes";
$resultado=mysql_query($query) or die ("Error en la query: ".mysql_error());
$numregistros=mysql_num_rows($resultado);
echo "<p>El número de registros de clientes es: ",$numregistros,".</p>";
Operaciones SQL en una base de datos MySQL
El conjunto de registros resultado del query se guarda en una
variable
Varias funciones facilitan el tratamiento de los registros obtenidos
mysql_num_rows: Devuelve el número de registros (filas)
$numfilas=mysql_num_rows($resultado)
mysql_fetch_array: Devuelve el siguiente registro o FALSE si no hay
más
$registro=mysql_fetch_array($resultado, [modo_de_acceso])
• Argumento opcional para indicar cómo se accede a los registros
• Usando el nombre del campo como índice: MYSQL_ASSOC
• Usando la posición como índice: MYSQL_NUM
• Usando tanto el nombre de campo como la posisicón: MYSQL_BOTH
mysql_free_results: Libera la memoria una vez procesado el
conjunto de registros
$registro=mysql_fetch_array($resultado)
Juan Pavón - UCM 2012-13 PHP 34
18. Operaciones SQL en una base de datos MySQL
Ejemplo: listado de la tabla clientes
Juan Pavón - UCM 2012-13 PHP 35
$query="SELECT * FROM clientes";
$resultado=mysql_query($query) or die ("Error en la query: ".mysql_error());
$numregistros=mysql_num_rows($resultado);
echo "<p>El número de registros de clientes es: ",$numregistros,".</p>";
echo "<table border=2><tr><th>NIF</th> <th>Nombre</th> <th>Dirección</th>
<th>Email</th> <th>Teléfono</th></tr>";
while ($registro = mysql_fetch_array ($resultado, MYSQL_ASSOC)) {
echo "<tr>";
foreach ($registro as $campo)
echo "<td>",$campo, "</td>";
echo "</tr>";
}
echo "</table>";
mysql_free_result($resultado);
Desconexión de la base de datos
Cuando se deja de utilizar la base de datos conviene cerrar la
conexión al servidor para liberar recursos ordenadamente
mysql_close($conexion);
Juan Pavón - UCM 2012-13 PHP 36