Este documento presenta conceptos básicos sobre bases de datos, incluyendo tablas, columnas, registros, claves primarias y relaciones entre tablas. Explica la importancia de planificar una base de datos antes de su creación para garantizar que sea flexible y pueda evolucionar a largo plazo de acuerdo con las necesidades del negocio.
Seguranca e Auditoria de Sistemas de Informação - Apresentação da EmpresaCristiano Garcia
Apresentação da empresa objeto de estudo na disciplina de Segurança e Auditoria de Sistemas de Informação, turma 2015/1, na Universidade Federal de Lavras/MG. Foi obrigatória a apresentação na forma manuscrita.
Grupo: Cristiano, Eduardo, Elder e Rodrigo
Seguranca e Auditoria de Sistemas de Informação - Apresentação da EmpresaCristiano Garcia
Apresentação da empresa objeto de estudo na disciplina de Segurança e Auditoria de Sistemas de Informação, turma 2015/1, na Universidade Federal de Lavras/MG. Foi obrigatória a apresentação na forma manuscrita.
Grupo: Cristiano, Eduardo, Elder e Rodrigo
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Telefónica
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0xWord escrito por Ibón Reinoso ( https://mypublicinbox.com/IBhone ) con Prólogo de Chema Alonso ( https://mypublicinbox.com/ChemaAlonso ). Puedes comprarlo aquí: https://0xword.com/es/libros/233-big-data-tecnologias-para-arquitecturas-data-centric.html
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
En este proyecto de investigación nos adentraremos en el fascinante mundo de la intersección entre el arte y los medios de comunicación en el campo de la informática.
La rápida evolución de la tecnología ha llevado a una fusión cada vez más estrecha entre el arte y los medios digitales, generando nuevas formas de expresión y comunicación.
Continuando con el desarrollo de nuestro proyecto haremos uso del método inductivo porque organizamos nuestra investigación a la particular a lo general. El diseño metodológico del trabajo es no experimental y transversal ya que no existe manipulación deliberada de las variables ni de la situación, si no que se observa los fundamental y como se dan en su contestó natural para después analizarlos.
El diseño es transversal porque los datos se recolectan en un solo momento y su propósito es describir variables y analizar su interrelación, solo se desea saber la incidencia y el valor de uno o más variables, el diseño será descriptivo porque se requiere establecer relación entre dos o más de estás.
Mediante una encuesta recopilamos la información de este proyecto los alumnos tengan conocimiento de la evolución del arte y los medios de comunicación en la información y su importancia para la institución.
Actualmente, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital, siendo este un componente electrónico, por tanto se ha desarrollado y se ofrece un amplio rango de soluciones al problema del almacenamiento de datos.
Inteligencia Artificial y Ciberseguridad.pdfEmilio Casbas
Recopilación de los puntos más interesantes de diversas presentaciones, desde los visionarios conceptos de Alan Turing, pasando por la paradoja de Hans Moravec y la descripcion de Singularidad de Max Tegmark, hasta los innovadores avances de ChatGPT, y de cómo la IA está transformando la seguridad digital y protegiendo nuestras vidas.
2. Las bases de datos son unos de los principales mecanismos
de persistencia d las aplicaciones de los datos son de vital
importancia para cualquier desarrollador
Se van a conocer conceptos básicos como:
• claves
• columnas
• tablas
• registros
3. ¿PORQUE SE QUIERE UNA BASE DE DATOS?
¿QUE PROBLEMAS PODRÁS ENCONTRAR EN UNA BASE DE DATOS?
¿QUE DEVEMOS HACER PARA REALIZAR UNA BASE DE DATOS?
¿ENQUE COSAS DEBEMOS PENSAR?
¿QUE NECESITAS SABER SOBRE LAS BASES DE DATOS?
¿EN EL CURO SE BAN A DAR CONCEPTOS DE LENGUAJES DE PROGRAMACION?
¿QUE SON LAS BASES DE DATOS?
¿PARA REALIZAR UNA BASE DE DATOS PRIMERO SE DEVEN DE CONOCER LOS FUNDAMENTOS?
¿LAS BASES DE DATOS AN SIDO DISEÑADAS PARA RESOLVER UN PROBLEMA?
¿LA INFORMACION PUEDE SER DE UNA EMPRESA DE CLIENTES PRODUCTOS EMPLEADOS DE FAMILIA DE MI
MISMO PUEDE SER CASI CUALQUIER COSA?
¿LOS DATOS PUEDEN SER NUMEROS, TEXTOS O FECHAS?
¿SOLO ABRIR UN ARCHIVO VER TU INFORMACION Y COPIARLO A LA BASE DE DATOS O INLUSO UA HOJA D
CALCULO?
Tener datos no es un problema el problema es lo que viene después pero al 6 problemas potenciales.
Tamaño: lo que comienza siendo pequeños datos puede convertirse a grandes datos
Facilidad de actualización: si barias personas están trabajando en lo mismo puede sobrescribir los cambios
Precisión: algunos archivos crecen y crecen y eso hace que no sean 100% fiables
Seguridad: porque hay datos confidenciales y sensibles que no debe verlos cualquier persona
Redundancia: puede producir conflictos si no tenemos las precauciones debidas ya que tantas copias no son buenas
Importancia de los datos: si pasa un accidenté puedes perder datos tiempo etc.,
Estas son las razones por las que p una base de puedas necesitar una base de datos
Una base de datos no solo es para poner los datos si no para permitirles crecer que otros puedan modificarlos que los datos
sean exactos y consistentes saber quién puede modificarlos leerlos revisarlos etc.
4. Hay que conocer la diferencia entre sistemas de gestión de bases de datos y bases de datos, cuando hablas con un programador muchos de
ellos te dirán que su base de datos es:
ORACLE
SQL SERVER
MY SQL
POSTGRESQL
MONGO DB
CUALQUIER OTRA
PERO ESTAS NO SON BASES DE DATOS SON SISTEMAS DE GESTION DE BASE DE DATOS. A menudo abreviadas como de data deis y
sistema, lo que queremos instalar es un software DBMS que nos permita gestionar bases de datos podría ser portando un sistema de gestión
de escritorios tales como por ejemplo desde axes eventos asta base de datos mucho más grandes como Oracle o los instalaría sobre un
ordenador personal sino un ordenador independiente
Una base de datos portando las reglas que rige sobre esos datos el sistema portando en gestión de datos el MySQL el programa o conjunto de
programa rodean y gestionan su propia base de datos para asegurarse que se aplican las reglas y un gestión de base de datos puede manejar
muchas más en su interior cada uno y separada de la otra reglas diferentes con datos diferentes con medidas de seguridad diferentes en un
diagrama generalmente veremos:
Las bases de datos son representadas como cilindró en un mundo perfecto podríamos imaginar que una empresa solo existiría una base de
datos contendría todos y cada uno de los trozos o elementos de información, importante para esa empresa pero sin embargo es una práctica
muy común al hecho de tener barias bases de datos por ejemplo la base de datos que se dé la información del cliente podría ser
independiente de la base de datos que se ocupa de información de recursos humanos por tanto en muchas empresas no solo quieren variar
las bases de datos es lo que incluso puede ocurrir diferentes sistemas de gestión de base de datos tales como Sico server Oracle o divirtió.
Avece es simplemente o estamos usando un sistema es mejor que otra cosa y otro sistema es mejor que otra o abecés simplemente porque la
empresa y junto con la adquisición venia otra base de datos pero a pesar de que existen diferencia en sistemas de gestión diferentes no
necesitamos hincapié en cada uno de ellos independientemente porque muy comúnmente nos vamos a referir a cada uno de ellos como
sistemas relacionales: ORACLE, SQL SERVER, DB2, MySQL, PostGreSQL, SQLite, MS Access de gestión de bases de datos o DRB O MS bases
de datos
También existen otras tales como DBMS JERARQUICOS, DBMS DE RED, DBMS ORIENTADOS A OBJETOS o más recientemente caen
dentro de la categoría originalmente se decía que estos sistemas más basados en DB2 ese cueles sistemas alternativos DB2 esecueles o
sistemas alternativos o desde hace años se conocen como DB2 olí siques es decir sistemas no vamos a entrar en detalles porque no tenemos
una base de distinción como para entrar a ese nivel de distinción nos vamos a centrar primero en comprender los sistemas de gestión de
bases de datos relacionales por un par de razones:
5. Es un sistema más común y más utilizado de todos como aquellos que puedas en un momento dado ver o todos aquellos que puedas ver o puedas trabajar.
Los mismos principios son utilizables para todos ellos.
Se conoce los SQL no te va a hacer demasiado difícil saltar a otros tipos de base de datos como por ejemplo las bases de datos SQL o MySQL visualizar por
tanto cuales son las características de los sistemas relacionales de gestión de bases de datos
FUNDAMENTOS DE BASE DE DATOS
Características de las bases de datos relacionales
Una base de datos se constituye una o más generalmente más tablas
TABLA: bloque de construcción más básico y más fundamental de una base de datos una base de datos en tablas es solo una cascara bacía carente de
significado ya que en tal caso no solo no había dado datos en la misma no abrían en ningún lugar para los datos al final porque todos los datos al finalmente
debe de estar en tablas y cada tabla se describe repitiendo una lista formalizadas de datos visualmente a menudo se representan como una hoja de cálculo.
Nuestras tablas se componen de columnas y de filas de filas de izquierda a derecha y de columnas un poco como las columnas que sostienen un edificio y si
tienes varias tablas dentro de la base de datos, cada tabla diferente contienen información pero repite siempre teniendo filas y columnas aunque tengan
diferentes números de fila y diferente número de columnas finalmente siempre son lo mismo dentro de cada una vamos a encontrar filas y vamos a encontrar
columnas también dentro de ellas las columnas.
Dentro de cada una fila vamos a encontrar dentro de ellas columnas, cada columna por tanto describe una pieza de datos las titularemos como nombre,
apellidos, fecha de contrato, y muy importante no solo puede tener un nombre sino también tiene una descripción del tipo de datos que va a contener estos
con nombre de fechas, o números toda fila debe de tener la misma estructura cada fila debe de tener el mismo formato no esta permitido desviarse de la
estructura que nos dan las columnas por tanto cada fila es un cliente y cada columna describe una parte muy específica acerca de los datos de es cliente.
Cada tabla define que columnas son y que definición tienen, imponen normas sobre los datos y una vez que descuidamos las reglas del tema de gestión de
datos no nos va a dejar escapar de ellas si digo por adelantado la columna llamada por ejemplo fecha, debe de contener y debede poner en una fila y
simplemente un texto que numero va a permitir si digo que debe de contener un número y debe de contener un valor no puedo introducir tampoco un texto
así que al final y al tanto tenemos tablas que contienen datos y que contienen columnas, no suena mal de hecho en absoluto nada malo pero debes darte
cuenta de que no puedes pensar en estas cosas de la misma manera y el mismo tiempo porque todas tienen un orden primero debes de definir tablas, una bes
que hayas definido tablas definidos columnas y una ves que ayas definido columnas solo cuando hayas definido primero una tabla primero la columna tendrán
las filas y una ves que ayas definido columnas definido columnas y luego las filas y una ves que ayas definido columnas y anteriormente tablas entonces ya el
uso del dia a dia trabajaras con fila agregando nuevas filas de datos actualizando filas, eliminando las filas existentes uno de los primeros requisitos que te bas a
encontrar es la capacidad de tener acceso especifico a una fila determinada inconfundible de una tabla por ejemplo: un cliente si estuviéramos trabajando con
eso la concreta para esos necesitamos un concepto que vamos a presentar concepto de la clave.
EXPLORANDO VALORES ÚNICOS Y CLAVES PRIMARIAS EN BASE DE DATOS
Casi todas las tablas de una base de datos requerirán de una clave la clave es una manera de identificar una sola fila en particular se crean típicamente una
columna y tendrá un valor único garantizado para cada una de las filas que podemos hacer en cualquier sistema en base de datos.
Una tabla contiene una columna con valor único y una columna con valor no único
6. Valor único: significa que si tiene un millón de cifras dentro de la columna no podría haber repeticiones por ejemplo: no podría introducir dos veces el número
153 en su lugar tendría que introducir otro valor en cambio la columna de valores.
Valor no único: puede contener tanto valores como sea necesario incluso no hay ningún problema en tener valores repetidos
DEFINIENDO RELACIONES ENTRE TABLAS
Desde luego cualquier base de datos comienza con la definición de las tablas pero la capacidad de agregar de bienes la gran parte de datos están conectados de
algo natural
Ejemplo: tengo una tabla de clientes, y una tabla de periodo, una tabla de producto realmente estas tablas están vinculadas ya que finalmente cuando un cliente
haga un pedido de productos, un pedido con que tiene un cliente sus pedidos y los productos que están incluidos y los productos generalmente ban a acabar
dentro de la tabla de pedidos
En un diagrama de bases de datos esto podría pasarse de varias maneras diferentes por ejemplo: cliente y pedido tendríamos una relación de uno a muchos
muchas personas usan este símbolo pata de gallo para mostrar en qué dirección va la relación. En otras ocasiones puede que lleve el símbolo de 1 y ∞ infinito es
decir de uno a muchos en otras situaciones puede ser en departamentos e empleados, o pueda que se repita este esquema dentro de clase y estudiante.
Un elemento equivale a muchos en la parte izquierda de esta manera por tanto de esta puede aver varios estudiante dentro de un departamento pueda haber
varios empleados, dentro de cada categoría genera mucho más pedidos los clientes generan
DESCRIBIENDORELACIONES DE MUCHOS A MUCHOS
La relación más común de muchos a muchos entre las tablas de una base de datos relacionadas, ha beses sea necesaria definir una relación de muchos a
muchos.
Aunque una gestión de base de datos no tenga soporte directo vamos a usar una solución intermedia como siempre nos centramos a un problema de negocio
tenemos que tener una solución abstracta y tecnológicas
TRANSACCIONES Y EL TEST ACID
Cuando tratamos de introducir o modificar datos a nuestras bases de datos a menudo tenemos que trabajar las acciones una transacción es una cosa muy
importante dentro del mundo de base de datos y para entendernos mejor que podemos hacer es pensar como arriamos una transacción en un mundo real
cuando hablamos de una transacción nos referimos aun acto comercial por ejemplo :le da €15 a un librero se lo da por el libro esa es la transacción lo
importante es que la transacción es esperar el libro y si te entrega el libro esperas entregar el dinero o bien sucede dos cosas o ninguna de ellas sucederá
Por tanto en un sistema de computación es lo clásico de transacción es un sistema bancario.
Una transacción debe ser atómica, consistente, aislada y durable
ATOMICA: es una palabra griega atomo a una unidad indivisible se refiere a la idea central de que esta transacción debe ocurrir completamente o no ocurrir en
absoluto si hay dos pasos para la transacción o 20 pasos todos están contenido y o bien se completa en otro se competa con éxito vuelve al estado original no
existe en concepto de transacción se produzca a mitad si por algún motivo se pierda una transacción por un corte de energía por quedarse sin espacios para
albergar un memorado o un re aplicación no importa sea cual sea el error la regla atómica es la regla que todo ocurre o nada ocurre.
CONSISTENTE COHERENTE: significa que cualquier transacción debe de tener un estado balido al principio y dejar otro estado balido al final.
AISLADA: la transacción está bloqueando esencialmente en ese momento los datos que participan en la transacción por tanto el sistema debe bloquear los datos
mientras esta están dentro de la transacción para que ninguna otra parte del sistema los pueda utilizar.
DURABLE: durabilidad es para que la transacción sea robusta esto quiere decir que todo esto sucede y que la transacción sea sucedido con éxito en ese caso se
garantiza la operación.
7. Como podemos diseñar una base de datos independientes de base de datos que estés
utilizando.
TENER UN ESQUEMA: para poder reflejar una parte de las tablas y campos que ban a
participar dentro de la base de datos, para diseñar y crear.
NO DEBES EMPEZAR EN LA BASE DE DATOS: un error muy común en abrir
directamente el software de base de datos el cliente de visión visual que nos da acceso a la
base de datos y empezar a crear tablas y empezar a crear campos directamente dentro de
sus software y esto generalmente es una idea bastante mala.
NESECITAMOS REALIZAR PLANIFICACCION: es algo que no se puede visualizar y es
algo que no se puede improvisar y luego cabiar de idea puede tener consecuencias
bastantes desastrosas por tanto los cambios son posibles, pero dolorosos y por tanto
tenemos que evitarlos siempre que podamos
VENTAJAS: las bases de datos ya tienen cierto tiempo y el modelo de base de datos
regional que conocemos tiene un cierto entorno que tiene un entorno de unos 30 y 40
años, esto quiere decir que en cualquier caso existen mecanismo que pueden realizar
modificaciones a una base de datos que ya a sido creada pero si se puede realizar
modificaciones lo único que quiere es modificar una base de datos y tener que
modificarla al cabo de un año o dos simplemente poder modificar hay cric pueden dejar
de funcionar lo cual puede dejar la
8. aplicación original en un estado desastroso lo importante siempre, cuando diseñamos
una base de datos es realizar algo de planificación previa
¿Cuál es punto realmente importante de tu base de datos? es decir ¿para que sirva tu base
de datos?
Estas construyendo una base de datos para apoyar una necesidad ya sea una necesidad de
escritorio, una aplicación web, o una aplicación móvil.
Estamos construyendo una biblioteca en línea sería demasiado fácil pedir algo así:
”es una base de datos para almacenar información de productos y compras.” Dentro de esa
biblioteca o dentro de esa librería mientras esto puede ser ciertas cuestiones nos
deberíamos preguntar cuál es la intención de esa librería o esa biblioteca o es un sitio web,
es una aplicación debido como crezca esa aplicación en los próximos años dependerá de
cómo plantees cosas ahora por tanto no hace falta tener en cuenta que sea demasiado
complejo.
“ayudamos a los acompañantes a encontrar libros descubrir las opciones de otros lectores
comprar y seguir el estado de sus pedidos, contribuir con sus propias opciones, y saber
que otros productos les podrían gustar, basándonos en lo que les gustaría a otros lectores
con gusto similares.”
¿QUE ES LO QUE YA TIENES?
¿Qué PARTES SON LAS QUE YA TIENEZ CLARADENTRO DE TU MODELO DE
NEGOSIOS EN DEFINITIVA SON LAS QUE BAN A DERIBAR EN LA BASE DE DATOS?
ELEMENTOS FISICOS: Las bases de datos tienen como objetivos soportar como
elementos cuánticos, es decir el objetivo muchas beses convertido en vegetal como
elemento físicos existentes tales como formularios, hojas de periódico, facturas.
9. GENTE Y EXPERIENCIA: Es realizar la versión digital de los procesos que están llevando
gentes que ya tienen una determinada experiencia dentro de un sector.
UNA BASE DE DATOS YA EXISTENTE: muchas bese lo que hacemos es digitalizar una base
de datos ya existente en modo físico incluso muchas otras beses muy comunes como otros
días consiste en trabajar de esas que durante años están trabajando en bases de datos
realizadas en hojas de cálculo, la mayoría quieren dar un gran salto más asía delante.
En definitiva solo tenemos que hacer una base de datos en definitiva cuando aya una hoja de
cálculo.
ENTIDADES: Las bases de datos relacionales se componen de una o más tablas, las tablas
solamente son componentes básicos de una base de datos.
IDENTIFICANDO COLUMNAS Y TIPOS DE DATOS
Las entidades se convertirían en nuestras tablas y los atributos de nuestras entidades se
convertirían en las columnas de la base de datos.
TABLA EMPLEADO: tendríamos que hacer una columna para primer nombre, apellido,
fecha alta, tipo salario, direccion1, direccion2, ciudad, estado, CP, email, foto, (etc.) porque
separar tanto al definir las columnas, es para poder realizar más adelante tantas búsquedas
como sea necesario.
ELIGIENDO CLAVES PRIMARIAS EN TABLAS
Cada tabla tiene que tener un identificador principal, exclusivo, una fila individual donde no
pueda haber duplicado donde no hubiera haber confusión por tanto si tenemos una tabla de
EMPLEADO tendría que haber una IDEMPLEADO si tenemos una tabla de CLIENTES tiene
que haber un IDCLIENTES y si tenemos ISDN nos lleva a un libro específico o tenemos que
decir que talvez esa es la clave primaria.
Esto es cuando un valor no especifica única a una fila pero los valores sí que los hacen por
tanto les gustaría combinar dos columnas para crear una clave principal.
10. Si tenemos una serie de datos en una serie de tablas individuales sabemos que
muchas de estas tablas se van a necesitar entre si por tanto si empezamos a
desglosar diagrama de ER simplemente tratamos de empezar y entablar algún
tipo de relaciones.
Opciones de relación (cardinalidad)
Son tres tipos:
Uno-a-uno
Uno –a-muchos
Muchos-a-muchos
En primer lugar deshuesamos las entidades más adelantes se van a convertir en
tablas, a partir de ahí lo que hacemos es crear las base de datos los atributos de
estas entidades y atributos se van a convertir en las columnas incluso lo que
aremos es especificar cuáles serán las claves primarias y no se puede establecer
la relación, que no tengamos las claves primarias por tanto empezamos agregar
tablas en las que balen estas relaciones de uno a uno como a muchos.
El tipo más común de cardinalidad dentro de un sistema de gestión de base de
datos relacional es de uno a muchos que también debemos describir muchos a
uno depende un poco que lado de relación lo miremos.
11. Es posible crear relaciones uno a uno pero realmente es inusual explorando relaciones de uno a
uno.
Mostrar una tabla de ejemplos de estudiantes puedo añadir una columna de IDCLASE lo que
tengo que hacer es añadir clase y estudiantes a la tabla vinculada a la tabla llamémosla tabla
adjunta una tabla de unión, una tabla de puenteo, una tabla de puenteo, una tabla de referencia
cruzada.
Es la relación que se establece en varias tablas.
Para un cliente es importante por todos los pedidos pero igual de importante es la idea una
relación es igual que una regla una restricción entre una fila de n cliente y una fila que no existe
dentro de la tabla de pedido asi de esta manera no sería posible a ser una tabla de pedidos un
nuevo registro que fuera registro de referencia, cuando realmente un cliente no existe.
Hay dos lugares que principalmente vamos a impactar la visión de nuevas filas vamos a
reescribir es la actualización en este caso por tanto no puedo realizar una actualización sobre el
líder de pedidos.
Puede haber varias eliminaciones en cascada la primera de ella es cuando ocurre cuando intento
eliminar el cliente.
Al eliminar un cliente pero por las razones que sea razones relacionadas con la contabilidad no
quiero eliminar las filas correspondientes a ese pedido del cliente pero no el pedido.
Es intentar anular los usuarios x pero para anular los usuarios x estaría introduciendo una falta
de integridad referencial porque existirían unas líneas de pedido que no correspondería a
ningún cliente lo que se hace es anular el intento de anulación y para anular un cliente seria
cerrar un usuario diferente las líneas de pedido o cualquier otro registro dentro de este sistema
referente en conciencia a este elemento.
12. Este es un proceso donde se toma un diseño de la base de datos y si aplica un
conjunto de criterios formales las reglas llamadas formas normales estas se
desarrollaron dentro de 40 años principalmente por el padre de las clases de
datos finales.
PRIMERA FORMA NORMAL= 1NF
SEGUNDA FORMA NORMAL=2NF
TERCERA FORMA NORMAL=3NF
“la base de datos cumplirá con la tercera forma normal cuando cualquier
atributo no primario de R sea no transitivamente dependiente (P.E
directamente dependiente) de cada clave candidata de R…”
PRIMERA RAGLA FORMAL
La primera regla normal dice que solo debemos contener un valor que no deven
aver grupos ni repetición
SEGUNDA REGLA FORMAL
Cualquier campo no clave deberá ser dependiente de toda la clave primaria
TERCERA REGLA FORMAL NORMAL
Ningún campo no clave depende de ningún otro campo no clave
13. Es el vocabulario compartido entre las bases de datos relacionales este
lenguaje no es para programación de propósito general es un pequeño
lenguaje curamente centrado para bases de datos lo bueno es que con
un pequeño puñado de palabras clave vas a hacer el 90 por ciento de
todo lo que puedas necesitar en SQL hay muchas palabras clave pero
hay una que vas a utilizar por encima de las demás y esta es SELECT es
una palabra que vamos a utilizar para seleccionar o leer información de
una de las tablas de nuestras bases de datos lo que asemos es preguntar
a las bases de datos y esperamos que nos dé un respuesta
Técnicamente la mejor palabra antes que pregunta es consulta quiere
Es la palabra que se usa para indicar que le estamos preguntando algo a
una base de datos
SELECT
Si quieres seleccionar algunos de los datos de mi base de datos voy a
tener barias tablas barias columnas en cada tabla voy a decir que parte
especifica de la base de datos estoy interesado es escanear
14. El formato es el siguiente:
Select columnas
Fron tabla
Lo que hacemos es elegir una columna comncreta dentro de una tabla concreta
Columna hace referencias a la columna
Tabla hace referencia al nombre de tabla
Por ejemplo
Voy a decir que quiero seleccionar el nombre de la tabla empleado
Select nombre
From empleado
Y esto lo que aria es devolverme los nombres de la tabla empleado ya sea que
tengamos mil registros o cualquier cantidad
Si queremos recuperar más datos solo separamos por una coma
Select nombre, apellido
From empleado
Y el resultado será ob tener la lista de nombre y la lista de apellidos
En algunas ocasiones no pondremos coma si no que pondremos * que este sirve
para visualizar todo lo que tenemos dentro de una tabla
15. Una forma de restringir no es restringir los campos si no restringir cuantos
registros queremos devolver lo usamos con la clausula WHERE ES LA
CONDICION DONDE
Puedo decir x ejemplo donde el apellido es = ´Green’
bien donde el IDEempleado = 474
bien incluso donde el salario >50000
¿Qué pasa con las mayúsculas y con las minúsculas importan?
En SQL no importan en términos generales por lo tanto podríamos escribir
select sin necesidad de usar mayúsculas pero los desarrolladores han adaptado
a escribir las palabras claves en mayúsculas y escribir las columnas o el número
de la base de datos en minúsculas
SQL también no es sensible a los espacios en blancos quiere decir al nombre de
las columnas una sentencia completa de SQL debe de terminar con ;
USANDO CLAUSA WHERE
AL ESCRIBIR UNA CONSULTA BASICA muchas veces la parte de select y from
son bastantes fáciles
Escribir la clausula WHERE contra una tabla en particular es unh poco como
escribir una sentencia IF en un lenguaje de programación convencional lo que
estamos tratando de escribir es una situación verdadera o falsa asi que kiero
llamar a esa tabla donde en este caso boy a especificar que solo kiero seleccionar
solo aquellas coincidencias cuyo apellido sea exactamente igual que Green
16. SELECT *
FROM empleado
WHERE apellido= Green
Si lo que se iguala es un texto deve de ir con comillas pero las usa simples no dobles
Si nlo que se esta comparando es un numero no necesita comillas
Para combinar con la clausula WHERE podemos usar ADN
EJEMPLO 1
WHERE Salario>50000
ADN departamento = ‘Ventas’
EJEMPLO 2
WHERE Salario>50000
OR departamento = ‘Ventas’
Or lo que hace es comprobar que se cumplan las condiciones o almenos que se cumpla una
Si quiero probar que departamento esta dentro de marketing y ventas
Ejemplo:
SELECT *
FROM
WHERE departamento IN (´Marketing´, ‘venbtas’);
Si buscamos algo mas flexible podemos utilizer la palabra LIKE lo que hace es buscar dentro de
apellido ba a buscar aquellos que empiecen por Green
Ejemplo:
SELECT *
FROM Empleado
WHERE apellido LIKE ‘Green%’;
17. Silo que estamos buscando es una sola letra podemos usar el _
Ejemplo:
SELECT *
FROM Empleado
WHERE apellido LIKE ‘Sm_th’;
Hay otro balor específico que se llama NULL
SELECT *
FROM Empleado
WHERE inicial = NULL;
Este elemento convierte un valor a nada es decir un valor basio pero es mejor en este caso colocar is NULL porque no queremos igualar a
un valor vacío si no que lo queremos preguntar si es un valor vacío
SELECT *
FROM Empleado
WHERE inicial IS NULL;
De la misma manera existe IS NOT NULL que sirve para comprobar que un valor no esta bacio
La forma en la que la base de datos devolverá los datos de la consulta no siempre será de la manera que nosotros queremos
SEECT Descripción,
Precio, Color
FROM Producto;
ORDER BY precio DESC;
DESC se utiliza de mayor a menor
Lo que quiero es que me aparezca el precio mayor
ORDER BY se utiliza para dar un orden a las tablas
Otro ejemplo
SELECT*
FROM empleado
Where Salario > 50000
ORDER BY APELLIDO, NOMBRE;
En este ejemplo selecciono los empleados que gana más de 50000 y va a ordenar nombres y apellidos
18. ACONTINUACION TENEMOS UNAS CUANTAS PALABRAS BAJO SQL Y LAS TENEMOS POR EL NOMBRE DE
FUNCIONES AGREGADAS
SELECT COUNT (*)
FROM EMPLEADO
CON ESTA FUNCION LO QUE HARA ES CONTAR E NUMERO DE EMPLEADOS QUE TIENE
SELECT COUNT (*)
FFROM EMPLEADO
WHERE salario > 50000
CON ESTA FUNCION LO QUE HARA ES CONTAR E NUMERO DE EMPLEADOS QUE TIENE Y TAMBIEN DECIR
CUANTOS EMPLEADOS GANAN MAS A 50000
SELECT *
FROM Producto
ORDER BY Precio DESC;
TODO EL PRODUCTO ORDENADO DE MANERA DESENDIENTE
SELECT MAX (precio)
FROM producto;
En este permite sacar e valor maximo del precio
SELECT MAX (precio)
FROM producto;
En este permite sacar e valor minimo del precio
SELECT avg (precio)
FROM producto;
En este permite sacar e valor promedio del precio
SELECT SUM (TOTAL)
FROM PEDIDO;
WHERE IDCliente
En este permite SUMAR los valores pero pregunta que es lo que quiere sumar
19. AQUÍ se trabajara cuando realmente no se está buscando información
en una sola tabla si no en 2
SELECT Nombre, Apellido, FechaAlta,
IDDEPTO
FROM Empleado
Este es un proceso normal solo para una tabla
para realizar un cruce de datos vamos a utilizar de esta manera:
SELECT Nombre, Apellido, FechaAlta,
IDDEPTO
FROM Empleado JOIN Departamento
Tenemos barias palabras claves en el lenguaje CQL
No solo las bases de datos proveen esto lo que se conoce como e
acrónimo de CRUD
Crear
Leer
Actualizar
Eliminar
20. las bases de datos no usan esto si no lo siguiente
Crear INSERT
Leer SELECT
Actualizar UPDATE
Eliminar DELETE
LENGUAJE DE DEFINICION DE DATOS
INSERT
SELECT
UPDAT
DELETE
Se utilizan como manipulación de datos
Pero hay otras preguntas como ser:
CREATE CREAR
ALTER MODIFICAR
DROP ELIMINAR
Todo esto respecto a una tabla
Estas palabras se les conocen como definición de datos
21. CREANDO INDICES
Cuando una base de datos comienza a crecer es de suma importancia crear un índice
Un índice lo que hace es permitirnos encontrar más rápido un contenido
Se puede ordenar de manera que sea por orden alfabético es decir si lo ordenan por
apellido ordenar de la a (A la Z) y si necesitas un apellido con H vas directamente a la H y
buscas lo que necesita
Es como un libro que tiene muchas páginas y deseas sabe run poco acerca de algo y miras
el índice
CONFLICTOS y AISLAMIENTOS
IDEA DEL AISLAMIENTO
Esta idea se da cuando el usuario esta interactuando con la base de datos como podemos
evitar que se crucen unos con otros
PROCESOS ALMACENADOS
Forma básica de realizar un proceso almacenado
Créate procedure AltoSalario()
SELECT * FROM Empleado
WHERE Salario > 50000
ORDER BY Apellido, Nombre
END;
22. CALL AltoSalario()
La palabra clabe CALL AltoSalario() con esto podremos
utilizarlo mas tarde
Procedimiento mediante parámetros
CREATE PROCEDURE EmpleadosEnDepto (IN deptt
VARCHAR (50))
SELECT*FROM Empleado
WHERE Departamento = ‘VENTAS’
ORDER BY Apellido, Nombre
END
Ataque de inyección SQL
Es un ataque bastante típico contra sitios de internet
23. BASES DE DATOS DE ESCRITORIOS
los mas conocidos y mas escojidos son
microsoft acces
file maker
acces es un motor de bases de datos que esta en todas partes porque es parte de la suit de
microsoft office
razones para usarlos
instalacion simple
facil de usar
plantillas para principiantes
herramientas con interfaz
opciones de reporte
razones para no usarlos
muchos usuarios
gran cantidad de datos
24. SISTEMAS DE BASES DE DATOS NoSQL
CouchDB
MongoDB
Apache Cassandra
Hypertable
Hbase
Neo4J
BigTable
Riak
Project Voldemort
Redis
Caracteristicas De NoSQL
No usar SQL
No estar basado a tablas
No estar orientado a relaciones
No ser ACID
No tener schema Formal
Orientadas al desarrollo web
Orientadas a desarrollos grandes
A menudo de código abierto
GUARDADO DE DOCUMENTOS
se guarda un documento autonomo en lugar de filas y columnas
razones para escoger una base de datos NoSQL
necesita un schema flexible.
tiene grandes cantidades de datos
valoras mas la escalabilidad que la consistencia