Creación de la base de datos en MySQL

Explicamos los pasos a seguir para crear la base de datos en MySQL
Antes de abordar los scripts de nuestro sitio, es importante crear la base de datos (BD) que va a ser utilizada por los mismos. Hemos elegido una base de datos MySQL, entre otras razones, porque se trata del tipo de base más corrientemente utilizado en combinación con PHP. Por supuesto, podríamos haber utilizado cualquier otra base para la cual PHP tenga funciones o simplemente crear un DSN y emplear las funciones para ODBC disponibles en PHP.

Pensamos que el hecho de programar en este lenguaje lleva inherente la necesidad de conocer mínimamente el funcionamiento de MySQL y que la utilización de cualquier otra BD o método de conexión no conlleva cambios significativos en los scripts que abordaremos. Veremos pues el caso particular de MySQL y dejamos a vuestra cuenta aplicar lo visto para cualquier otra base.

En capítulos de otros manuales hemos explicado la instalación y utilización de MySQL y la sintaxis para la creación de tablas. En este capítulo nos limitaremos a describir paso a paso la creación de la base postal sin hacer hincapié en el significado de los comandos utilizados.

Pasemos pues a describir uno a uno los pasos a seguir:

1.-Creación de la base de datos
Una vez dentro de MySQL, el primer paso es crear la base de datos:

Create database postal;

2.-Creación de las tablas
Para la creación de la tabla imagenes, donde almacenaremos los gráficos de las postales, generaremos dos campos: id_imagen, que es el identificador del grafico, específico para cada uno y cuyo valor corresponde también con el nombre del archivo gif. El otro campo, tipo, define el objeto de la postal (cumpleaños, Navidades o San Valentín).

La forma más simple de crear esta tabla sería:

Create Table imagenes
(
id_imagen int(2),
tipo varchar(15)
);

La siguiente tabla a crear, postal, debe guardar toda una serie de datos necesarios para hacer llegar la postal al destinatario y hacer que el remitente reciba la confirmación de recepción. Veremos cómo actúa cada uno de esos datos en el script más adelante. Por ahora nos limitaremos a describir la sintaxis de la creación:

Create Table postal
(
id_postal int(5),
texto varchar(255),
email_destinatario varchar(50),
nombre_destinatario varchar(50),
email_remitente varchar(50),
nombre_remitente varchar(50),
id_imagen int(2),
avisar char(7)
);

Para una aplicación más compleja deberíamos definir además las claves y considerar más detenidamente el tipo de campo a definir. Aconsejamos leer los capítulos del tutorial de SQL donde podréis consejos para mejorar las prestaciones de las tablas.

3.-Relleno de la tabla imagenes con los gráficos de muestra
Para rellenar rápidamente la tabla en un primer momento, sin necesidad de recurrir a sentencias SQL tipo Insert, podemos crear un archivo de texto con los registros separados por líneas y los valores de campo, puestos en el buen orden, separados por tabuladores. En el pack de descarga encontraréis el archivo texto imagenes ya preparado. Lo único que tenéis que hacer es colocar el archivo en el directorio bin de MySQL y ejecutar la siguiente orden en la base de datos:

Load data local infile "imagenes.txt" into table imagenes;

Con esto tendremos llena la tabla imagenes. Para comprobarlo teclead:

select * from imagenes;

Veréis como aparece en pantalla el contenido de la tabla que obviamente corresponde al del archivo texto.

4.-Creación del directorio virtual en el servidor
Llegados a este punto, queda extraer los archivos restantes del pack a un directorio que deberá ser registrado en el servidor como directorio virtual tal y como hemos explicado para el caso del PWS.



Ir a la aplicación

Autor

Rubén Alvarez

Redactor de DesarrolloWeb.com

Comentarios

MCL

05/10/2004
¿Como formatean las imagenes en un archivo de texto?

RESPUESTA

No entiendo exactamente a qué te refieres... pero te comento que las imagenes no las metemos en la base de datos, lo que metemos allí es el nombre de la imagen, el nombre del archivo. Las imagenes luego estarán en el servidor en un directorio determinado y mediante los nombres de los archivos accederemos a ellas.

EDUARDO

25/11/2004
me parece magnifico el ejemplo de envio de cards, pero tengo una duda: con respectoa a

Relleno de la tabla imagenes con los gráficos de muestra
Para rellenar rápidamente la tabla en un primer momento, sin necesidad de recurrir a sentencias SQL tipo Insert, podemos crear un archivo de texto con los registros separados por líneas y los valores de campo, puestos en el buen orden, separados por tabuladores. En el pack de descarga encontraréis el archivo texto imagenes ya preparado. Lo único que tenéis que hacer es colocar el archivo en el directorio bin de MySQL y ejecutar la siguiente orden en la base de datos:

Load data local infile "imagenes.txt" into table imagenes;


YA HICE TODO AGREGUE EL TXT EN LA CARPETA BIN DE MSQL PERO LO QUE NOSE ES AFREGAR LA ORDEN:


Load data local infile "imagenes.txt" into table imagenes;

EN QUE PARTE DE MSQL SE AGREGA LO ANTERIOR.

AHORA PARA BUSCAR O COMPROBAR LO SIGUEINTE DONDE SE DIGITA ESTO:

Con esto tendremos llena la tabla imagenes. Para comprobarlo teclead:

select * from imagenes;

Veréis como aparece en pantalla el contenido de la tabla que obviamente corresponde al del archivo texto.

juan lopez

28/1/2005
Quisiera saber si existe una forma para que atravez de php transformar las imagenes en un archivo plano(txt) y luego insertarla en mysql, Y desde luego poder realizar el proceso inverso.

Edwin

24/5/2005
por favor necesito que me ayuden, somos un grupo de 5 personas y nos a tocado hacer una base de datos en mysql por favor quiero que me ayuden para aprender a crear tablas y hacer las realciones y tambien nos dijeron que las tablas tienen que estar normalizadas por favor todo esto en codigo espero una posible respuesta atte. Edwin

Jua Antonio

24/5/2005
POr que no funciona, actiualmente la aplicacion que tienen en linea, se visualiza el siguiente error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/chapala/public_html/postales/verpostales.php on line 25
Haz click sobre la tarjeta que te guste para enviarla

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /home/chapala/public_html/postales/verpostales.php on line 47

XLinux

28/7/2005
Hola amigos,

Algunas sugerencias en usar tablas innodb, isam o myisam??
Me refiero en rapidez, seguridadd y mejor perfomance???

Gracias por sus respuestas.

Saludos
XLinux

fernando

15/12/2005
Hola... donde coloco el script para cargar las imangenes:

Load data local infile "imagenes.txt" into table imagenes;

Estoy usando PhpMyadmin con mysql.
Cuando le doy ejecutar sentencia sql,mesale el siguiente error
consulta SQL:

1cumple2cumple3navidad4sanvalentin5cumple6navidad7sanvalentin8navidad9sanvalentin10cumple11navidad12sanvalentin
MySQL ha dicho:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1 cumple
2 cumple
3 navidad
4 sanvalentin
5 cumple
6 navidad
7 sanvalentin' at line 1

Dex

11/1/2006
el ejemplo no marca error pero no envia ninguna postal y en su aplicación en línea marca un error.

gracias

jd

15/2/2006
hola

es interesante el articulo sobre la creacion de la Bd y de las tablas, pero al momento de hacer la primera tabla me produjo el error 1046 (3D000): No database selected

a que es debido este error?
gracias

sn

03/4/2007
salud;
se agradecen este tipo de tutoriales en castellano.
sin embargo he podido observar algunos errores en el paso de variables que si no se corrigen hacen que la aplicación no funcione.
un ejemplo, en envio_postal.php:
//Creamos el array variables_formulario tipo sesion con los datos del formulario

$variables_formulario[0]=$email_destino;
$variables_formulario[1]=$nombre_destino;
$variables_formulario[2]=$email_origen;
$variables_formulario[3]=$nombre_origen;
$variables_formulario[5]=$texto;
$variables_formulario[6]=$id_imagen;

no se rellena el array con los datos pasados por el formulario sino con variables fantasmas que no se donde se definen, si es que se definen en alguna parte...
lo correcto sería:

$variables_formulario[0]=$_POST['email_destino'];
$variables_formulario[1]=$_POST['nombre_destino'];
$variables_formulario[2]=$_POST['email_origen'];
$variables_formulario[3]=$_POST['nombre_origen'];
$variables_formulario[5]=$_POST['texto'];
$variables_formulario[6]=$_POST['id_imagen'];

me he encontrado errores incomprensibles de éste tipo a lo largo de la aplicación. sólo lo apunto para el que se haya topado con algo similar sepa por dónde tirar. además de ser una crítica constructiva.

Jonathan

14/8/2007
bueno, no soy programador ni nada por el estilo pero entre al tutorial y lo he estado siguiendo. al publicarlo en internet no me funciona, me podrian ayudar

luisa

24/9/2007
se prodria explicar de manera mas sencilla como se crea una base de datos en my sqlPO

kely

22/10/2008
buenas, yo necesito hacer un sistema x que pueda tener una base de datos,que haga un proceso determinado, y muy aparte quiero accesar a este sistema mediante web. que lenguajes de programacion debo utilizar exactamente y no quiero pagar licenicas.

bigg

20/4/2009
duda
hola a todos la verdad que estoy intentado aprender hacer bases de datos en mysql, pero instale el programa pero no he podido acceder a realizar la tabla si alguien me puede colaborar,

agradeceria su valiosa colaboracion.

mark

17/5/2009
no funciona manual
los archivos que bienen anexos no se pueden descargar como el pack de descargas para el sistema de envio de postales.

gracias

siREZ

07/7/2009
mayor aclaracion
como se introducen las imagenes sin utilizar el archivo imagenes.txt.
El enlace de descarga esta roto y no se puede descargar el pack que contiene dicho archivo.
Ya tengo lista la aplicacion pero faltan las imagenes
Que se almacena en id_imagen????????
que se almacena en tipo??????
deseo recibir ayuda al respecto.
sirez2@hotmail.com
gracias

Silvia

31/10/2010
Problema, error 1046
Muchas gracias por tu pagina, llevo tiempo intentando crear unas tablas con este programa pero me sale un error, es decir, me explico, cuando pongo
create database postal; me dice Query Ok, 1 row affected
Luego pongo el create table imagenes (...)
y me sale error 1046: no datebase selected

Me estoy volviendo loca, me dice que no la he creado, pero si la he creado... enfin.. ayuda por favor.

Gracias :)

Besti4

21/2/2011
Ayuda a crear una base de datos
Hola saludo a toda la comunidad estudio Informatica Primer semestre y necesito hacer un software o base de datos para hacer lo siguiente, llevar un registro de todo los alumno como por ejemplo:

Nombres:
Apellidos:
Cedula:
Edad:
Direccion:
Carrera:
Semestre:

es mas omenos asi; otra cosa quiero que se haga para llevar el registro del alumno durante la callera ponle son 6 semestre, osea creo que debo dejarle el espacio para incluirno a medida que el alumno vaya subiendo de nivel , algo asi como que cuando yo tecle el numero de cedula me salga el registro completo del estudiante si me entienden. y tambien colocarle dos logo de la universidad uno en cada esquina para luego cuando se quiera imprir los datos o el estatu del estudiante en hoja carta espero una buena explicacion

drack_bibi

02/6/2011
contraseña
ola oye tengo intalado el mysql 7.0.6.0 pero me pide una contraseña que segun la trae por defaul me podrias auxiliar por fa :(

andreeta666

13/2/2012
No deja bajar el archivo
no me deja descargar el pack de descaga Urgente. !

Compartir