Este tutoriald se centra en cómo agregar, modificar, y quitar datos de las tablas en la base de datos usando lengua de manipulación de datos del SQL. Sin este conocimiento, realmente no tendríamos ningún uso para una base de datos; sería simplemente una entidad estática sin propósito.
Primero creemos una base de datos y una tabla para trabajar con en esta clase particular. Nuestra base de datos será llamada dmlexample, así que déjenos ahora crean eso con la declaración siguiente:
el mysql > CREA el dmlexample de la BASE DE DATOS;
Una vez que estén creados, necesitemos especificar que deseemos utilizar la nueva base de datos ejecutando esta declaración:
mysql > dmlexample del USO;
La consola debe ahora informarnos que la base de datos ha cambiado;
|
|
Ahora que hacemos que nuestra base de datos instale, déjenos crean una tabla para experimentar con llamado sampletable. Esta tabla contendrá los campos siguientes: username, contraseña, edad, E-mail, y la fecha que la entrada fue creada.
Podemos entonces crear nuestra tabla con la declaración siguiente de DDL:
el mysql > CREA LA TABLA sampletable (- > TEXTO del username, - > TEXTO de la contraseña, - > edad INTERNA, - > TEXTO del email, - > datecreated el TIMESTAMP);
Ahora que hacemos nuestra tabla crear, miremos cómo vamos sobre la adición de las filas (expedientes) de la información en ella. Para agregar filas en la tabla, necesitamos utilizar el comando del RELLENO. Aquí es cómo agregaríamos una sola fila a nuestro sampletable.
mysql > RELLENO EN el ->('andrew sampletable ', ' qwerty
', 20, ' andrew@dreamcircle.co.uk ', FALTA DE INFORMACIÓN de los
VALORES)
Aviso cómo la regeneración de la consola nos dice que se haya afectado una fila. Por lo tanto, hemos agregado una fila a nuestra tabla sampletable.
Podemos entonces utilizar un comando llamado SELECTO para visión los datos en la tabla. Entraremos más detalle sobre este comando más adelante en este tutotial, pues es muy importante, pero para ahora nosotros apenas lo utilizaremos oculto. Veamos qué datos están en nuestra tabla del dmlexample:
el mysql > SELECCIONA * de sampletable;
| Nota | El aviso cómo datecreated el campo refleja la hora y la fecha en que agregamos la fila en la tabla. Esto es porque especificamos la FALTA DE INFORMACIÓN cuando agregamos la fila, y hacer esto hará que un campo del TIMESTAMP ase la fecha actual y la hora del sistema por defecto. |
Es también posible agregar varias filas de datos en un solo comando. Ahora intentemos esto agregando otras tres filas a nuestra tabla en un solo comando del RELLENO. Se hace esto como sigue:
mysql > RELLENO EN VALORES sampletable - > (' glenn ', '
gimboid ', 21, ' glenn@chopsewage.com ', FALTA DE INFORMACIÓN), - >
(' jim ', ' letmein ', 23, ' jim@email.net ', FALTA DE INFORMACIÓN),
- > (' wes, ' opensesame ', 31, ' wes@email.net ', FALTA DE
INFORMACIÓN);
Como usted puede ver, este vez la regeneración de la consola sugiere que se hayan afectado tres filas; por lo tanto, hemos agregado tres filas a nuestra tabla. Podemos verificar esto otra vez usando el comando SELECTO:
el mysql > SELECCIONA * de sampletable;
Cuando se ejecuta esto, usted ahora verá que la tabla contiene cuatro filas (o expedientes, si usted tiene gusto) de la información.
Ahora que sabemos agregar datos a una tabla, nos dejamos mirar cómo vamos sobre datos existentes de modificación de la tabla.
Para modificar datos en una tabla, requerimos el uso del comando de la ACTUALIZACIÓN. Primero intentemos cambiar todas las contraseñas en todas las filas en la tabla al "changeme." Esto se puede lograr con la declaración siguiente:
contraseña sampletable del SISTEMA del mysql > de la ACTUALIZACIÓN = ' changeme ';
| Precaución | El comando de la ACTUALIZACIÓN (así como todos los comandos del SQL) es absolutamente de gran alcance. Con uso imprudente usted puede destruir muchos de datos con un error simple. Casi cada pregunta debe tener por lo menos uno donde condición. |
Cuando ejecutamos esta declaración, la consola nos informará que se han afectado cuatro filas, pues hemos cambiado la contraseña para cada fila en esa tabla.
Ahora podemos ver el efecto sobre la tabla usando el comando SELECTO, como sigue:
el myql > SELECCIONA * de sampletable;
¿Una pregunta obvia ahora está, cuál si deseo solamente poner al día una sola fila? Digamos que deseamos cambiar la contraseña de Glenn de changeme de nuevo a gimboid. Utilizaríamos la declaración siguiente para hacer esto:
contraseña sampletable del SISTEMA del mysql > de la ACTUALIZACIÓN = ' gimboid ' DONDE username = ' glenn ';
Cuando ejecutamos este comando en la consola, nos informa que se ha afectado una fila. Esto es porque pondrá al día solamente el campo de la contraseña si el campo del username es igual al glenn. Si ahora utilizamos el comando SELECTO en la tabla, podemos ver que solamente la contraseña de Glenn ha cambiado.
Podemos también aplicar esta técnica para permitirnos poner al día solamente ciertos campos. Por ejemplo, podríamos cambiar todas las contraseñas de la gente que es la edad 30 o más joven. Aquí está el comando que requeriríamos para hacer esto:
contraseña sampletable del SISTEMA del mysql > de la ACTUALIZACIÓN = ' jóvenes ' DONDE edad <= 30
Cuando ejecutamos este comando, nos informará que se han afectado tres filas, pues tres de los cuatro expedientes en nuestra tabla tienen una edad igual a o menos de 30.
| Extremidad | Una idea útil es poner al día un campo del timestamp con la FALTA DE INFORMACIÓN. Esto recuperará el tiempo más último del sistema que la base de datos está funcionando encendido (es decir, un uso práctico sería observar la vez última un jugador entrado). |
Quitar datos de una tabla se hace de una manera muy similar a poner al día datos. Primero miraremos cómo suprimir una sola fila de datos. Ahora suprimamos el glenn de la base de datos usando la declaración siguiente:
mysql > CANCELACIÓN de sampletable DONDE username = ' glenn ';
Cuando ejecutamos este comando, el cliente de la consola de MySQL nos informará que una fila fue afectada (es decir, suprimido).
Una vez más como con las declaraciones de la ACTUALIZACIÓN, podemos especificar condiciones para permitir que suprimamos, por ejemplo, cada uno con una edad menos de 30. Ahora hagamos esto con la declaración siguiente:
mysql > CANCELACIÓN de sampletable DONDE edad < 30;
Cuando ejecutamos esta declaración, el cliente nos informará que se han afectado dos filas, o en este caso, suprimido. Si ahora utilizamos el comando SELECTO en nuestra tabla, veremos que solamente una fila está dejada en la tabla.
Finalmente, es también posible suprimir todas las filas de una tabla en una sola declaración. Todo lo que necesitamos hacer no debe especificar ninguna condición, como lo hicimos cuando pusimos al día todos los campos de la contraseña al changeme. Aquí está la declaración para suprimir todas las filas en una tabla (es decir, vacie la tabla).
mysql > CANCELACIÓN de sampletable;
Como usted puede ver, la tabla ahora no contiene ninguna información.
Hasta este momento, hemos utilizado simplemente el comando siguiente de demostrar todos los datos en nuestra tabla sampletable:
el mysql > SELECCIONA * de sampletable;
Esto está trayendo todos los campos de la tabla sampletable y los está volviendo realmente. * es un comodín, que los medios básicamente él representan cualquier cosa (o en este caso, cualquier campo).
Antes de que entremos la declaración SELECTA más lejos, déjenos primero agregan un ciertos datos al experimento con en nuestra tabla sampletable. Utilice la declaración siguiente para insertar un ciertos datos:
mysql > RELLENO EN VALORES sampletable - > (' andrew ', '
qwerty ', 20, ' andrew@dreamcircle.co.uk ', FALTA DE INFORMACIÓN), -
> (' andrew ', ' letmein ', 27, ' andrew@email.net ', FALTA DE
INFORMACIÓN), - > (' george ', ' papel ', 19, ' george@email.net ',
FALTA DE INFORMACIÓN), - > (' máquina de hilar ', ' jen999 ', 27, '
jen@email.net ', FALTA DE INFORMACIÓN), - > (' sandra ', ' sdra2 ',
27, ' sandra@email.net ', FALTA DE INFORMACIÓN);
Ahora que hemos agregado nuestros datos en la tabla, si utilizamos la declaración SELECTA con el comodín (*), como hacíamos antes, recuperará y exhibirá toda la información de la tabla en la consola. Ahora intentemos esto con la declaración siguiente.
el mysql > SELECCIONA * de sampletable;
Como usted puede ver, la declaración ha recuperado toda la información de la tabla (es decir, todas las filas y todas de las columnas contenidas en cada uno de las filas).
Digamos que lo único que deseamos recuperar es el campo de la contraseña. Para conseguir todas las contraseñas de la tabla sampletable, utilizaríamos la declaración siguiente:
mysql > contraseña SELECTA de sampletable;
Aviso cómo substituimos simplemente el comodín (*) por la columna deseamos recuperar. Podemos también recuperar columnas múltiples usando una coma para delimitarlas. Intentemos seleccionar la columna del username y la columna de la contraseña solamente. Aquí está la declaración que requerimos para esto:
mysql > username SELECTO, contraseña de sampletable;
Cuando ejecutamos esta declaración, podemos ver en la consola que los campos solamente del username y de la contraseña se han seleccionado de la tabla.
¿Ahora que sabemos recuperar los campos individuales de las tablas, cómo recuperamos una sola fila? Podemos aplicar fácilmente una condición a una declaración SELECTA, apenas como lo hicimos cuando poníamos al día la tabla y la suprimíamos de la tabla. Con una declaración SELECTA condicional, solamente exhibamos la información de la máquina de hilar de la base de datos. Aquí está la declaración que requerimos para esto:
el mysql > SELECCIONA * de sampletable DONDE username = ' máquina de hilar ';
Cuando ejecutamos esta declaración, sólo los detalles de la máquina de hilar serán exhibidos en la consola del cliente de MySQL.
Podemos también incorporar la idea de seleccionar campos especificados. Un ejemplo práctico de esto sería encontrar la contraseña que se relaciona con un username. Aquí es cómo conseguiríamos la contraseña que perteneció a George:
mysql > contraseña SELECTA de sampletable DONDE username = ' george ';
Cuando ejecutamos esta declaración, podemos ver que solamente un solo campo está exhibido, que sucede ser contraseña de George.
| Nota | Cuando especificamos campos específicos, como en este ejemplo, nos no limitan a los campos que estamos seleccionando para el uso en DONDE cláusula. |
En nuestros datos de la muestra, hay dos filas con el username andrew. Si intentamos utilizar una declaración condicional para conseguir la contraseña para andrew, voluntad en hecho conseguimos dos contraseñas, una para cada entrada de andrew en la base de datos. Ahora intentemos esto apenas para la prueba. Aquí está la declaración que necesitamos:
mysql > contraseña SELECTA de sampletable DONDE username = ' andrew ';
Cuando ejecutamos esta declaración, podemos ver que tenemos dos contraseñas el demostrar en la consola.
| Nota | Los duplicados se pueden quitar del resultado usando la opción DISTINTA. Por ejemplo: SELECCIONE el username DISTINTO de sampletable. |
Tengamos una mirada en cómo el comando de los similares puede ayudarnos a encontrar la información que requerimos. El usar COMO es ideal para encontrar secuencias en bases de datos, especialmente si usted tiene solamente una parte de la secuencia completa (es decir, para un Search Engine). Por ejemplo, digamos que deseamos encontrar a alguien en la base de datos que nombre comienza con la letra j. Para lograr esto, requeriríamos la declaración siguiente:
el mysql > SELECCIONA * de sampletable DONDE el username TIENE GUSTO del ' j% ';
Note aquí cómo la máquina de hilar fue recuperada, como su username era el único a comenzar con un j. El % representa un comodín cuando está utilizado con COMO, así que si utilizamos la declaración siguiente en lugar de otro:
el mysql > SELECCIONA * de sampletable DONDE el username TIENE GUSTO del ' %j% ';
... la letra j podía aparecer dondequiera en la secuencia. También, observe que usted puede tener más que un solo carácter:
el mysql > SELECCIONA * de sampletable DONDE el username TIENE GUSTO de ' %nny ';
Esto recuperaría a toda la gente que tiene nombres que terminen con el texto "nny." Finalmente, si utilizamos la declaración siguiente:
seleccione * de sampletable donde el username tiene gusto de ' %nny%a ';
... recuperaría todo el contener de las filas "nny" en sus nombres, pero el nombre tendría que terminar con "a".
Online: 611 users browsing the articles directory
|
|