Entendido.

Este sitio utiliza cookies para analizar la navegación. Si continúa navegando se entiende que acepta su uso. Ver más detalles.";

Logo

Aprende Web

Crea y diseña tus sitios en la Web.

Manual de SQL

SQL es el lenguaje para trabajar con bases de datos en la web.


Y ahora tambien aprende a programar en C++ con Aprende Web C++

logo rss RSS. Suscribir canal.

Buscar en Aprende Web

Traducir página

Visita nuestro blog:

bolg.aprende-web.net

y entérate de las novedades o deja un comentario.

Dudas y sugerencias:

aprendeweb@aprende-web.net





Sobre ésta página

Ültima modificación: 29-01-2016.

Visitas este mes: 50

Visitas el mes pasado: 53

logo
WEB-GRAFÍA

Mi agradecimiento a las siguientes páginas Web. en las cuales me he basado para la elaboración de este manual:


Bases de datos
monografías.com
Curso MySQL
Curso MySQL de AulaFácil
MySQL con clase
conclase.net
Introducción a MySQL
ProgramacionWeb.net
Manual práctico de SQL
www.cepeu.edu.py
MySQL 5.0 Reference Manual
dev.mysql.com
SQL Tutorial
w3schools.com
Tutorial de SQL
desarrolloweb.com
Tutorial de SQL: Curso de SQL
sql.1keydata.com

Donativos

Si este sitio te parece interesante puedes contribuir con una pequeña aportación.




SQL (VII)

Insertar datos

imagen sql

Sentencia para insertar datos

En las páginas anteriores de este manual hemos visto cómo construir una base de datos con diferentes tablas y relaciones entre ellas. El siguiente paso es empezar a utilizar la base de datos, y lo primero que debemos hacer es insertar algunos datos en la base.

Para ello utilizaremos la sentencia INSERT INTO que inserta un registro en una tabla. Su sintaxis es la siguiente:

INSERT INTO nombre_tabla
  (columna1,columna2,columna3)
  VALUES ('valor1','valor2','valor3');

En primer lugar ponemos el nombre de la sentencia "INSERT INTO" seguido del nombre de la tabla.

A continuación, entre paréntesis ponemos el nombre de las columnas que tiene la tabla separadas por comas. No es necesario poner el nombre de todas las columnas de la tabla, podemos poner sólo aquellas en las que vayamos a insertar datos. La columna de clave primaria con autoincremento tampoco la pondremos, ya que su valor se genera automáticamente. Las columnas que no pongamos tomarán el valor nulo o por defecto.

Seguidamente ponemos la palabra clave "VALUES" (también podemos poner "VALUE"), seguido de los valores que tendrán las columnas en ese registro. Estos se ponen incluidos dentro de un paréntesis, entre comillas y separados por comas. Incluso cuando el valor sea una variable de PHP debemos ponerlos entre comillas.

Los valores escritos en "VALUES" se corresponden uno a uno con el nombre de las columnas, de manera que el "valor1" se insertará en la "columna1", el "valor2" en la "columna2" y así sucesivamente. Debe haber el mismo número de valores que de columnas, de otro modo la sentencia sql sería erronea.

Por ejemplo, en la tabla "miagenda" que hemos creado como ejemplo en páginas anteriores, podemos añadir ahora un registro de la siguiente manera.

INSERT INTO miagenda 
   (nombre,telefono1,telefono2,email)
   VALUES ('Juan Fernandez','943214566','664114227','juanfernan@gmail.com');


Insertar datos desde formularios

La utilización de bases de datos en la web está unida a la utilización de formularios. Los formularios son la manera normal de recoger los datos del usuario. Éstos los guardaremos en una base de datos.

Utilizaremos aquí la base de datos "mi_musica" creada en páginas anteriores para crear unos formularios que nos permitan introducir algunos datos. En primer lugar creamos un formulario para la la tabla "artistas" en una página HTML, llamada por ejemplo insertar_artista.html.

<form action="insertar_artista.php" method="post" >
<p>Artista : <input type="text" name="miartista" />
<p>Información: <textarea name="miinfo"></textarea>
<p><input type="submit" value="Insertar"  />
</form>

Ahora en el archivo insertar_artista.php introduciremos el código PHP que inserta los datos del formulario en la base de datos:

$artista=$_POST["miartista"];
$info=$_POST["miinfo"];
if ($artista=="") {
   echo "<p>No has escrito ningún nombre en la entrada 
      \"Artistas\" del formulario.</p>"; 
   }
else {
   $db=mysql_connect("localhost","root","");
   mysql_select_db("mi_musica",$db);
   $sql="INSERT INTO artistas
      (artista,info_artista)
      VALUES ('$artista','$info')
      ";
   mysql_query($sql,$db);
   mysql_close($db);
   echo "<h3>Se ha insertado el siguiente registro: </h3>
      <p>Artista : $artista.</p>
      <p>Info : $info</p>
      ";
}

En primer lugar recogemos los datos del formulario mediante "$_POST[ ]".

Antes de insertar los datos comprobamos que el campo "Artista" no esté vacio. Una vez insertados los datos devolvemos al usuario la información con los datos insertados.

Insertamos después los datos mediante la sentencia en SQL "INSERT INTO". Observa cómo aunque los datos los pasamos mediante una variable, debemos ponerlos también entre comillas.

De momento la única manera que tenemos para comprobar si los datos se han insertado en la base es examinar la propia base, por ejemplo mediante PhpMyAdmin.

Lo mismo que hemos hecho anteriormente lo haremos ahora para la tabla "discos", la segunda tabla que tenemos en la base de datos "mi_musica". Creamos primero el formulario en la página html insertar_disco.html :

<form action="insertar_disco.php" method="post" >
<p>Titulo : <input type="text" name="midisco" />
<p>Num ref_artista: <input type="text" name="ref_artista" />
<p>Num pistas : <input type="text" name="pistas" />
<p>Info : <textarea name="info"></textarea>
<p><input type="submit" value="Insertar"  />
</form>

En el archivo insertar_disco.php ponemos el siguiente código PHP para insertar los datos en la base:

$disco=$_POST["midisco"];
$ref_artista=$_POST["ref_artista"];
$pistas=$_POST["pistas"];
$info=$_POST["info"];
if ($disco=="") {
   echo "<p>No has escrito ningún nombre en la entrada 
      \"Titulo\" del formulario.</p>"; 
	 }
else {
   $db=mysql_connect("localhost","root","");
   mysql_select_db("mi_musica",$db);
   $sql="INSERT INTO discos
      (titulo,ref_artista,num_pistas,info)
      VALUES ('$disco','$ref_artista','$pistas','$info')
			";
   mysql_query($sql,$db);
   mysql_close($db);
   echo "<h3>Se ha insertado el siguiente registro: </h3>
      <p>Disco : $disco.</p>
      <p>Ref Artista: $ref_artista</p>
      <p>Num_pistas: $pistas</p>
      <p>Info : $info</p>
      ";
}

De esta manera tenemos dos formularios para insertar datos en las dos tablas de la base.

En el campo "ref_artista" se debe insertar el número que tiene el artista en la columna "id_artista" de la tabla "artistas". Pedir este dato en un formulario no suele ser lo habitual. Lo normal es que el usuario elija el artista entre una lista. Sin embargo dejaremos esto así hasta que veamos más adelante cómo resolver esto.


Insertar datos (ejemplo)

Una vez que hemos creado los formularios lo único que tenemos que hacer es utilizarlos para insertar datos en la base. Nosotros insertaremos los siguientes datos en la base "mi_musica", los cuales nos servirán luego para los ejemplos de páginas posteriores.

En la tabla "artistas" incluiremos los siguientes datos mediante el formulario para "artistas":

artista info_artista
Amaral Dúo formado por Eva Amaral y Juan Aguirre
Dire Straits Banda de rock británico fundada por Mark Knopfler en 1977
Mike Oldfield Michael Gordon Oldfield, músico y compositor británico.

En la tabla "discos" incluiremos mediante el formulario los siguientes registros:

titulo ref_artista num_pistas info
Pájaros en la cabeza 1 14 Cuarto disco de este artista. Año 2005
Brothers in arms 2 9 Quinto disco de la banda
Money for nothing 1 12 Primer disco recopilacion tras sus 5 anteriores
Tubular Bells 3 2 Primer disco de estudio del compositor.
Tr3s lunas 3 14 instrumental, año 2002

Como hemos dicho anteriormente los datos incluidos ahora en la base "mi_musica" nos servirán para los ejemplos de las siguientes páginas.


Para los ejemplos de las siguientes páginas de este manual utilizaremos estas dos tablas. Puedes crearlas manualmente o también Descargártelas en los siguientes enlaces:

Pulsamos en los botones anteriores y descargamos los archivos en formato ".sql". Después abrimos PHPMyAdmin (si tienes instalado XAMPP, "localhost/phpmyadmin" en el navegador), y creamos una nueva base de datos, desde ahí con la opción "importar" insertamos los dos archivos como dos nuevas tablas de la nueva base de datos.




En la siguiente página veremos cómo consultar los registros de una tabla de la base de datos

Consultar tablas



Manual de SQL

Anterior siguiente ... Siguiente siguiente


imprimir esta página

Página creada por ANYELGUTI.

Sugerencias: aprendeweb@aprende-web.net. Envia un manda un correo

Visita nuestro blog par saber en qué estamos trabajando: Aprende Web Blog

Más sobre anyelguti en http://anyelguti.16mb.com