SlideShare uma empresa Scribd logo
1 de 7
Baixar para ler offline
Guía de MySQL #2
Para este caso vamos a utilizar las tablas que normalizamos en la práctica
anterior.
La tabla original era
Id_orden Fecha Id_cliente Nom_cliente Ciudad Num_art nom_art cant Precio
2301 23/02/19 101 Martín Caracas 3786 Red 3 35,00
2301 23/02/19 101 Martín Caracas 4011 Raqueta 6 65,00
2301 23/02/19 101 Martín Caracas 9132 Paq-3 8 4,75
2302 25/02/19 107 Germán Coro 5794 Paq-6 4 5,00
2303 27/02/19 110 Pedro Maracay 4011 Raqueta 2 65,00
2303 27/02/19 110 Pedro Maracay 3141 Funda 2 10,00
Al aplicar las 3 formas normales, nos quedarían al menos cuatro (4) tablas,
a saber:
• Clientes (id_cliente, nom_cliente, ciudad)
• Artículos (num_art, nom_art, precio)
• Ordenes (id_orden, fecha, id_cliente)
• Articulos_ordenes (id_orden, num_art, cant)
Pudiéramos pensar inclusive en una tabla aparte para las Ciudades y
colocar un código de ciudad en la tabla Clientes para relacionarlas, pero eso lo
haremos más adelante. Comparen este resultado con el que ustedes obtuvieron
en la práctica de normalización.
Vamos a crear una BD en MySQL denominada ventas donde agruparemos
estas tablas y comenzaremos la inserción de registros en las mismas, todo ello a
través de la consola.
Ejecutemos una ventana cmd e ingresemos a la consola como vimos en la
guía anterior, recordando el comando mysql –u root –p. No olvides levantar el
servicio MySQL antes, con el xampp o el wamp.
Tipeemos el comando create database ventas; y presionamos <Intro>:
Ahora introducimos el comando use ventas;
Con esto le hemos dicho al
motor del programa que vamos a
efectuar las siguientes operaciones
sobre esa base de datos, que obviamente está vacía en este momento.
Ese comando nos muestra las tablas que están contenidas dentro de la BD
ventas. Una acotación importante aquí es que todo se maneja en minúsculas
dentro de la consola; fuera de ella, los nombres de las tablas y los campos dentro
de ellas se seguirán manejando en minúsculas, pero los comandos usualmente se
escriben en MAYÚSCULAS por norma general SQL, aunque en minúscula
funcionarían igualmente.
Observemos la tabla artículos un momento:
En esta tenemos 3 campos, que son
los encabezados de cada columna; las
tablas las podemos visualizar como si
fueran tablas de Excel, donde las columnas
vienen siendo los campos y las filas los
registros. Un registro es el conjunto de datos del mismo individuo u objeto dentro
num_art nom_art precio
3786 Red 35,00
4011 Raqueta 65,00
9132 Paq-3 4,75
5794 Paq-6 5,00
3141 Funda 10,00
de la tabla; un manejador de BD relacionales (RDBMS en inglés) en realidad es un
gran administrador de registros. Un campo viene siendo un atributo o cualidad de
dicho individuo u objeto dentro de la tabla.
Cada campo también tiene sus propiedades, como el tipo de dato que
almacena, es parecido a los tipos de datos de las variables en programación.
Podemos ver que el campo num_art es de tipo numérico, con un ancho de al
menos 4 dígitos; el campo nom_art es de tipo carácter, con un ancho que
podemos considerar variable (algunos nombres son más largos que otros) y el
precio también es numérico pero con posibilidad de guardar decimales también
(algo así como un float en lenguaje C). Con esto en mente, crearemos la tabla
artículos (sin el acento en la i).
Para verificar, observemos la estructura de la BD con show tables;
Ahora veamos la estructura de
la tabla artículos, con el comando
describe articulos;
Observa la disposición de las
columnas de la tabla que aparece
después de ejecutar el comando.
La columna Null significa que el campo puede aceptar valores nulos, o sea
puede quedar vacío; en ocasiones esto no es lo deseado, por ejemplo un campo
clave o nombre de artículo no deben quedar así, Mucho menos la columna
Default, que indica que el campo tiene como valor por defecto NULL, o sea vacío.
Esto lo cambiaremos cuando veamos cómo usar HeidiSQL.
Ahora vamos a insertar algunos valores de un registro en la tabla articulos,
siguiendo el modelo de la tabla que tenemos, con el siguiente comando:
insert into articulos (num_art,nom_art,precio) values (3786,’red’,35);
Ya tenemos un producto insertado en la tabla. Para revisarlo ingresamos el
comando select * from articulos;
y aparece el artículo ingresado.
Observen que los decimales están a pesar
que ingresamos un valor entero. Observen
también que el valor para el nombre va
encerrado entre apóstrofes porque es un campo de caracteres.
Ahora vamos a ingresar el resto de registros en la tabla:
insert into articulos (num_art,nom_art,precio) values
(4011,’raqueta’,65),(9132,’paq-3’,4.75),(5794,’paq-6’,5),(3141,’funda’,10);
Usemos el comando select para revisar el contenido de la tabla (con la
flecha hacia arriba del teclado van apareciendo los últimos comandos ingresados;
busca el del select):
Ahora ya tenemos 5 registros insertados en la tabla articulos.
¿Qué tal si solamente queremos consultar los datos de un artículo en
particular? Por ejemplo, si conocemos el número de artículo que viene siendo una
especie de código para el mismo, ya que no se repite.
Entonces el comando select tiene una cláusula que nos permite filtrar la
consulta:
select * from articulos where num_art=9132;
Podemos probar con cualquiera de los valores de los otros campos,
obteniendo resultados similares.
Supongamos ahora que el precio de la funda aumentó 3,55; entonces
ingresamos algo como
update articulos set precio=precio+4.75 where nom_art=’funda’;
Ahora hagamos un select sobre el registro modificado:
select * from articulos where nom_art=’funda’;
Si tuviéramos más de
un artículo con ese nombre,
saldría en el reporte del
select. Si queremos obtener
un solo registro, es mejor utilizar en la consulta un campo unívoco como el número
de artículo.
Insertemos ahora un nuevo artículo en la tabla:
insert into articulos values (9999,’zapatos’,45.95);
Ahora ingresemos el select global para ver todos los registros de la tabla:
Pero resulta que los zapatos esos no había que incorporarlos todavía a la
BD, entonces ¿cómo borramos ese registro?
delete from articulos where num_art=9999;
Observa que ya el artículo no aparece en la tabla.
Hagamos un resumen de los comandos SQL vistos hasta ahora:
• INSERT: Permite insertar registros en una tabla; se puede utilizar
con un registro a la vez o con una lista de registros, encerrando cada
uno entre paréntesis y separándolos con una coma entre ellos. Si se
van a insertar todos los campos de uno o varios registros en una
tabla, no es necesario colocar los nombres de los campos antes de
la cláusula VALUES.
• SELECT: Permite consultar los registros de una tabla cualquiera; si
se coloca * luego de select saldrán todos los campos, también se
pueden colocar los nombres de los campos que se necesiten. Si se
usa la cláusula WHERE se debe colocar un criterio de búsqueda
después, como el nombre de un campo y el valor a buscar.
• UPDATE: Permite actualizar el valor de uno o varios campos de un
registro o de todos los que cumplan con la condición especificada en
la cláusula WHERE. Si no se coloca la cláusula, la actualización
afectará a TODOS los registros de la tabla; hay que tener mucho
cuidado con esto.
• DELETE: Permite eliminar físicamente un registro o varios de la tabla
que cumpla con la condición especificada en el WHERE. Si no se
coloca se eliminarán TODOS los registros de la tabla; ¡pilas pilas con
esto!
Bueno, para terminar esta guía, salgamos de la consola con quit y
salgamos de la ventana cmd.
Espero que practiquen con estos comandos, ingresando las demás tablas y
los registros correspondientes. Saludos.
PD: Estos comandos forman lo que el acrónimo CRUD significa; si
investigaron lo sabrán.

Mais conteúdo relacionado

Mais procurados (18)

Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
 
Comandos utilizados en sql
Comandos utilizados en sqlComandos utilizados en sql
Comandos utilizados en sql
 
DDL oracle - base de datos
DDL oracle - base de datosDDL oracle - base de datos
DDL oracle - base de datos
 
T A B L A D E D I S P E R S I O N (Hash Table)
T A B L A  D E  D I S P E R S I O N (Hash Table)T A B L A  D E  D I S P E R S I O N (Hash Table)
T A B L A D E D I S P E R S I O N (Hash Table)
 
Sentencias sql
Sentencias sqlSentencias sql
Sentencias sql
 
Consultas condicionales en sq server
Consultas condicionales en sq serverConsultas condicionales en sq server
Consultas condicionales en sq server
 
SENTENCIAS SQL
SENTENCIAS SQL SENTENCIAS SQL
SENTENCIAS SQL
 
Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2
 
Introducción a sql server
Introducción a sql serverIntroducción a sql server
Introducción a sql server
 
DDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosDDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datos
 
Sql 2010
Sql 2010Sql 2010
Sql 2010
 
SENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVERSENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVER
 
Comandos mysql
Comandos mysqlComandos mysql
Comandos mysql
 
Consultas básicas en sql server
Consultas básicas en sql serverConsultas básicas en sql server
Consultas básicas en sql server
 
Seleccion de datos_sql_2005
Seleccion de datos_sql_2005Seleccion de datos_sql_2005
Seleccion de datos_sql_2005
 
Manual de excel
Manual de excelManual de excel
Manual de excel
 
Teoria sql
Teoria sqlTeoria sql
Teoria sql
 
Apuntes.13
Apuntes.13Apuntes.13
Apuntes.13
 

Semelhante a Guia basica de MySQL 2

2. creación de tablas 2007
2. creación de tablas 20072. creación de tablas 2007
2. creación de tablas 2007
yenifer1995
 
Trabajando con sql (parte 1)
Trabajando con sql (parte 1)Trabajando con sql (parte 1)
Trabajando con sql (parte 1)
Juan Vade
 
Modulo de programacion sql unidad II
Modulo de programacion sql   unidad IIModulo de programacion sql   unidad II
Modulo de programacion sql unidad II
firemas
 
Comandos y funciones sql postgres
Comandos y funciones sql postgresComandos y funciones sql postgres
Comandos y funciones sql postgres
HIPOLITO GRULLON
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
josecuartas
 
Sql manipulacion de tabla
Sql manipulacion de tablaSql manipulacion de tabla
Sql manipulacion de tabla
dmonges
 

Semelhante a Guia basica de MySQL 2 (20)

(2)_sesión_2_construir_base_datos_FINAL(mixta)_v1.2023-1.pdf
(2)_sesión_2_construir_base_datos_FINAL(mixta)_v1.2023-1.pdf(2)_sesión_2_construir_base_datos_FINAL(mixta)_v1.2023-1.pdf
(2)_sesión_2_construir_base_datos_FINAL(mixta)_v1.2023-1.pdf
 
Ejemploddl dml-ok
Ejemploddl dml-okEjemploddl dml-ok
Ejemploddl dml-ok
 
2. creación de tablas 2007
2. creación de tablas 20072. creación de tablas 2007
2. creación de tablas 2007
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
 
Operaciones basicas de sql
Operaciones basicas de sqlOperaciones basicas de sql
Operaciones basicas de sql
 
Trabajando con sql (parte 1)
Trabajando con sql (parte 1)Trabajando con sql (parte 1)
Trabajando con sql (parte 1)
 
Modulo de programacion sql unidad II
Modulo de programacion sql   unidad IIModulo de programacion sql   unidad II
Modulo de programacion sql unidad II
 
Mysql
MysqlMysql
Mysql
 
Slideshare
SlideshareSlideshare
Slideshare
 
Sql1 multitablas
Sql1 multitablasSql1 multitablas
Sql1 multitablas
 
Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005
 
Guia de ejercicio sql
Guia de ejercicio sqlGuia de ejercicio sql
Guia de ejercicio sql
 
Comandos y funciones sql postgres
Comandos y funciones sql postgresComandos y funciones sql postgres
Comandos y funciones sql postgres
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Sql Sentencias
Sql Sentencias Sql Sentencias
Sql Sentencias
 
Formato condicional, Buscar H Y V, Tabla Dinámica en Excel
Formato condicional, Buscar H Y V, Tabla Dinámica en ExcelFormato condicional, Buscar H Y V, Tabla Dinámica en Excel
Formato condicional, Buscar H Y V, Tabla Dinámica en Excel
 
Diapositivas de tablas y tipos de datos
Diapositivas de tablas y tipos de datosDiapositivas de tablas y tipos de datos
Diapositivas de tablas y tipos de datos
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 
Sql manipulacion de tabla
Sql manipulacion de tablaSql manipulacion de tabla
Sql manipulacion de tabla
 
MANUAL DE EXEL
MANUAL DE EXELMANUAL DE EXEL
MANUAL DE EXEL
 

Mais de vinceq (8)

Guiaparaensamblarunacomputadora
GuiaparaensamblarunacomputadoraGuiaparaensamblarunacomputadora
Guiaparaensamblarunacomputadora
 
Estructuralogicadeundiscoduro
EstructuralogicadeundiscoduroEstructuralogicadeundiscoduro
Estructuralogicadeundiscoduro
 
Guia basica de MySQL parte 1
Guia basica de MySQL parte 1Guia basica de MySQL parte 1
Guia basica de MySQL parte 1
 
Fundamentos de normalizacion
Fundamentos de normalizacionFundamentos de normalizacion
Fundamentos de normalizacion
 
POO con PHP
POO con PHPPOO con PHP
POO con PHP
 
Arquitectura Cliente-Servidor
Arquitectura Cliente-ServidorArquitectura Cliente-Servidor
Arquitectura Cliente-Servidor
 
Resumen HTML5, PHP, MySQL
Resumen HTML5, PHP, MySQLResumen HTML5, PHP, MySQL
Resumen HTML5, PHP, MySQL
 
Guía resumen JavaScript
Guía resumen JavaScriptGuía resumen JavaScript
Guía resumen JavaScript
 

Último

TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
NadiaMartnez11
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
UPTAIDELTACHIRA
 

Último (20)

Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCTRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 

Guia basica de MySQL 2

  • 1. Guía de MySQL #2 Para este caso vamos a utilizar las tablas que normalizamos en la práctica anterior. La tabla original era Id_orden Fecha Id_cliente Nom_cliente Ciudad Num_art nom_art cant Precio 2301 23/02/19 101 Martín Caracas 3786 Red 3 35,00 2301 23/02/19 101 Martín Caracas 4011 Raqueta 6 65,00 2301 23/02/19 101 Martín Caracas 9132 Paq-3 8 4,75 2302 25/02/19 107 Germán Coro 5794 Paq-6 4 5,00 2303 27/02/19 110 Pedro Maracay 4011 Raqueta 2 65,00 2303 27/02/19 110 Pedro Maracay 3141 Funda 2 10,00 Al aplicar las 3 formas normales, nos quedarían al menos cuatro (4) tablas, a saber: • Clientes (id_cliente, nom_cliente, ciudad) • Artículos (num_art, nom_art, precio) • Ordenes (id_orden, fecha, id_cliente) • Articulos_ordenes (id_orden, num_art, cant) Pudiéramos pensar inclusive en una tabla aparte para las Ciudades y colocar un código de ciudad en la tabla Clientes para relacionarlas, pero eso lo haremos más adelante. Comparen este resultado con el que ustedes obtuvieron en la práctica de normalización. Vamos a crear una BD en MySQL denominada ventas donde agruparemos estas tablas y comenzaremos la inserción de registros en las mismas, todo ello a través de la consola. Ejecutemos una ventana cmd e ingresemos a la consola como vimos en la guía anterior, recordando el comando mysql –u root –p. No olvides levantar el servicio MySQL antes, con el xampp o el wamp.
  • 2. Tipeemos el comando create database ventas; y presionamos <Intro>: Ahora introducimos el comando use ventas; Con esto le hemos dicho al motor del programa que vamos a efectuar las siguientes operaciones sobre esa base de datos, que obviamente está vacía en este momento. Ese comando nos muestra las tablas que están contenidas dentro de la BD ventas. Una acotación importante aquí es que todo se maneja en minúsculas dentro de la consola; fuera de ella, los nombres de las tablas y los campos dentro de ellas se seguirán manejando en minúsculas, pero los comandos usualmente se escriben en MAYÚSCULAS por norma general SQL, aunque en minúscula funcionarían igualmente. Observemos la tabla artículos un momento: En esta tenemos 3 campos, que son los encabezados de cada columna; las tablas las podemos visualizar como si fueran tablas de Excel, donde las columnas vienen siendo los campos y las filas los registros. Un registro es el conjunto de datos del mismo individuo u objeto dentro num_art nom_art precio 3786 Red 35,00 4011 Raqueta 65,00 9132 Paq-3 4,75 5794 Paq-6 5,00 3141 Funda 10,00
  • 3. de la tabla; un manejador de BD relacionales (RDBMS en inglés) en realidad es un gran administrador de registros. Un campo viene siendo un atributo o cualidad de dicho individuo u objeto dentro de la tabla. Cada campo también tiene sus propiedades, como el tipo de dato que almacena, es parecido a los tipos de datos de las variables en programación. Podemos ver que el campo num_art es de tipo numérico, con un ancho de al menos 4 dígitos; el campo nom_art es de tipo carácter, con un ancho que podemos considerar variable (algunos nombres son más largos que otros) y el precio también es numérico pero con posibilidad de guardar decimales también (algo así como un float en lenguaje C). Con esto en mente, crearemos la tabla artículos (sin el acento en la i). Para verificar, observemos la estructura de la BD con show tables; Ahora veamos la estructura de la tabla artículos, con el comando describe articulos; Observa la disposición de las columnas de la tabla que aparece después de ejecutar el comando. La columna Null significa que el campo puede aceptar valores nulos, o sea puede quedar vacío; en ocasiones esto no es lo deseado, por ejemplo un campo clave o nombre de artículo no deben quedar así, Mucho menos la columna
  • 4. Default, que indica que el campo tiene como valor por defecto NULL, o sea vacío. Esto lo cambiaremos cuando veamos cómo usar HeidiSQL. Ahora vamos a insertar algunos valores de un registro en la tabla articulos, siguiendo el modelo de la tabla que tenemos, con el siguiente comando: insert into articulos (num_art,nom_art,precio) values (3786,’red’,35); Ya tenemos un producto insertado en la tabla. Para revisarlo ingresamos el comando select * from articulos; y aparece el artículo ingresado. Observen que los decimales están a pesar que ingresamos un valor entero. Observen también que el valor para el nombre va encerrado entre apóstrofes porque es un campo de caracteres. Ahora vamos a ingresar el resto de registros en la tabla: insert into articulos (num_art,nom_art,precio) values (4011,’raqueta’,65),(9132,’paq-3’,4.75),(5794,’paq-6’,5),(3141,’funda’,10); Usemos el comando select para revisar el contenido de la tabla (con la flecha hacia arriba del teclado van apareciendo los últimos comandos ingresados; busca el del select):
  • 5. Ahora ya tenemos 5 registros insertados en la tabla articulos. ¿Qué tal si solamente queremos consultar los datos de un artículo en particular? Por ejemplo, si conocemos el número de artículo que viene siendo una especie de código para el mismo, ya que no se repite. Entonces el comando select tiene una cláusula que nos permite filtrar la consulta: select * from articulos where num_art=9132; Podemos probar con cualquiera de los valores de los otros campos, obteniendo resultados similares. Supongamos ahora que el precio de la funda aumentó 3,55; entonces ingresamos algo como update articulos set precio=precio+4.75 where nom_art=’funda’; Ahora hagamos un select sobre el registro modificado: select * from articulos where nom_art=’funda’; Si tuviéramos más de un artículo con ese nombre, saldría en el reporte del select. Si queremos obtener un solo registro, es mejor utilizar en la consulta un campo unívoco como el número de artículo.
  • 6. Insertemos ahora un nuevo artículo en la tabla: insert into articulos values (9999,’zapatos’,45.95); Ahora ingresemos el select global para ver todos los registros de la tabla: Pero resulta que los zapatos esos no había que incorporarlos todavía a la BD, entonces ¿cómo borramos ese registro? delete from articulos where num_art=9999; Observa que ya el artículo no aparece en la tabla. Hagamos un resumen de los comandos SQL vistos hasta ahora: • INSERT: Permite insertar registros en una tabla; se puede utilizar con un registro a la vez o con una lista de registros, encerrando cada uno entre paréntesis y separándolos con una coma entre ellos. Si se
  • 7. van a insertar todos los campos de uno o varios registros en una tabla, no es necesario colocar los nombres de los campos antes de la cláusula VALUES. • SELECT: Permite consultar los registros de una tabla cualquiera; si se coloca * luego de select saldrán todos los campos, también se pueden colocar los nombres de los campos que se necesiten. Si se usa la cláusula WHERE se debe colocar un criterio de búsqueda después, como el nombre de un campo y el valor a buscar. • UPDATE: Permite actualizar el valor de uno o varios campos de un registro o de todos los que cumplan con la condición especificada en la cláusula WHERE. Si no se coloca la cláusula, la actualización afectará a TODOS los registros de la tabla; hay que tener mucho cuidado con esto. • DELETE: Permite eliminar físicamente un registro o varios de la tabla que cumpla con la condición especificada en el WHERE. Si no se coloca se eliminarán TODOS los registros de la tabla; ¡pilas pilas con esto! Bueno, para terminar esta guía, salgamos de la consola con quit y salgamos de la ventana cmd. Espero que practiquen con estos comandos, ingresando las demás tablas y los registros correspondientes. Saludos. PD: Estos comandos forman lo que el acrónimo CRUD significa; si investigaron lo sabrán.