Download Informe de SQL. - Desarrollo De Software

Document related concepts

SQL wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Lenguaje de definición de datos wikipedia , lookup

PL/SQL wikipedia , lookup

Lenguaje de manipulación de datos wikipedia , lookup

Transcript
Trabajo especializado en SQL
(Base de datos)
Integrantes:




Leonel de Jesús Restrepo Rivero
Wilson dorado lujan
Rodrigo ortega
Julieth Castañeda
Profesor: Víctor Arismendy
SENA
Servicio Nacional de Aprendizaje
Caucasia –Antioquia
2013
Contenido
 Introducción
 Objetivos
 Concepto
 Características
 operadores
 Comandos
 Definición de procedimientos almacenados
 Ventajas de los procedimientos almacenados
 Funciones
 Tipos de funciones
 Códigos de Base de datos
 Otros
 conclusión
 Bibliografía
Introducción
El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos
normalizado, utilizado por el motor de base de datos de Microsoft, SQL se utiliza
para crear objetos También se puede utilizar con el método Execute para crear y
manipular directamente las bases de datos Jet y crear consultas SQL de paso a
través para manipular bases de datos remotas cliente - servidor
Además analizaremos cada una de las partes de SQL, comprobando y justificando
todas sus partes internas.
Objetivo
El objetivo de esta investigación, es estudiar en forma concreta una aplicación
diseñada especialmente para operar dentro del ambiente de las redes de
computadoras, tal como lo es SQL Server, con el fin de poder conocer su
arquitectura, las plataformas en las cuales es capaz de operar, sus métodos de
instalación, los procedimientos necesarios para trabajar en él y los elementos por
los cuales se encuentra constituida dicha aplicación.
Además, el poder analizar detalladamente toda su estructura, como lo es su
sintaxis, sus comandos, entre otras podemos tener un enfoque claro de como
poder hacer una base de datos, por que contaríamos con la teorías fundamentales
para poder ir a la practica.
Concepto
SQL
El lenguaje de consulta estructurado SQL Server (structured query language) en
español (Servidor de lenguaje de preguntas estructurado). Es un lenguaje
declarativo de acceso a bases de datos relacionales que permite especificar
diversos tipos de operaciones en ellas. Una de sus características es el manejo
del álgebra y el cálculo relacional que permiten efectuar consultas con el fin de
recuperar de forma sencilla información de interés de bases de datos, así como
hacer cambios en ella.
Además, SQL Server es un manejador de base de datos capaz de crear,
desplegar y administrar aplicaciones más seguras y confiables. SQL Server es un
estándar en el lenguaje de acceso a base de datos el cual nos permite compartir
datos en múltiples plataformas. Como podemos ver este programa nos facilita
mejor todo aquel trabajo específico que tenemos en una empresa o en un
mercado, agilizando todo el proceso matemático e historial de lo que queramos
manipular.
Características
Es un lenguaje declarativo de alto nivel o de no procedimiento que, gracias a su
fuerte base teórica y su orientación al manejo de conjuntos de registros —y no a
registros individuales— permite una alta productividad en codificación y la
orientación a objetos. De esta forma, una sola sentencia puede equivaler a uno o
más programas que se utilizarían en un lenguaje de bajo nivel orientado a
registros.
SQL también tiene las siguientes características:







Lenguaje de definición de datos: El LDD de SQL proporciona comandos
para la definición de esquemas de relación, borrado de relaciones y
modificaciones de los esquemas de relación.
Lenguaje interactivo de manipulación de datos: El LMD de SQL incluye
lenguajes de consultas basado tanto en álgebra relacional como en cálculo
relacional.
Integridad: El LDD de SQL incluye comandos para especificar las
restricciones de integridad que deben cumplir los datos almacenados en la
base de datos.
Definición de vistas: El LDD incluye comandos para definir las vistas.
Control de transacciones: SQL tiene comandos para especificar el comienzo
y el final de una transacción.
SQL incorporado y dinámico: Esto quiere decir que se pueden incorporar
instrucciones de SQL en lenguajes de programación como: C++, C, Java,
Cobol, Pascal y Fortran.
Autorización: El LDD incluye comandos para especificar los derechos de
acceso a las relaciones y a las vistas DDl
Operadores
Operador | Uso
AND | Es el "y" lógico. Evalúa dos condiciones y devuelve un valor de verdad
sólo si ambas son ciertas.
OR | Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdar si
alguna de las dos es cierta.
NOT | Negación lógica. Devuelve el valor contrario de la expresión. |
Operadores de Comparación:
Se utilizan principalmente en nuestras condiciones para comparar dos
variables y verificar si cumple o no la propiedad del operador.
Operador | Uso
< | Menor que
> | Mayor que
| Distinto de
= | Mayor ó Igual que
= | Igual que
BETWEEN | Utilizado para especificar un intervalo de valores.
LIKE
| Utilizado en la comparación de un modelo
In
| Utilizado para especificar registros de una base de datos.
Componentes de SQL
El lenguaje SQL está compuesto por:
 comandos
 cláusulas
 operadores
 Funciones de agregado.
Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las
bases de datos.
Además, al tener estas características declara mejor su estructura y puede dejar como
resultado una mejor base de datos. Por lo tanto, estas funciones como lo es su sintaxis
dejara enfocada su estructura, dejando habilitado todo su procedimiento:
Comandos
Existen dos tipos de comandos SQL:
 Los DLL que permiten crear y definir nuevas bases de datos, campos e
índices.
 los DML que permiten generar consultas para ordenar, filtrar y extraer
datos de la base de datos.
Ahora veamos acerca del comando DDL, quien nos dará más información
importante de la estructura que debería llevar nuestra base de datos:
El lenguaje de definición de datos es el que se encarga de la modificación de
la estructura de los objetos de la base de datos. Incluye órdenes para
modificar, borrar o definir las tablas en las que se almacenan los datos de la
base de datos. Existen cuatro operaciones básicas: CREATE, ALTER, DROP
y TRUNCATE.
 DROP | ELIMINAR
Este comando elimina un objeto de la base de datos. Puede ser una
tabla, vista, índice, función, procedimiento o cualquier otro objeto que el motor de
la base de datos soporte. Se puede combinar con la sentencia ALTER.
EJEMPLO
DROP TABLE 'NOMBRE_TABLA';
TRUNCATE | BORRAR TABLA
 TRUNCATE | BORRAR TABLA
Este comando trunca todo el contenido de una tabla. La ventaja sobre el comando
DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho más
rápido, especialmente si la tabla es muy grande. La desventaja es que truncate
sólo sirve cuando se quiere eliminar absolutamente todos los registros, ya que no
se permite la cláusula where. Si bien, en un principio, esta sentencia parecería ser
DML (Lenguaje de Manipulación de Datos), es en realidad una DDL, ya que
internamente, el comando truncate borra la tabla y la vuelve a crear y no ejecuta
ninguna transacción.
EJEMPLO
TRUNCATE TABLE 'NOMBRE_TABLA';
 INSERT | INSERTAR
Una sentencia INSERT de SQL agrega uno o más registros a una (y sólo una)
tabla en una base de datos relacional.
FORMA BASICA
INSERT INTO 'tabla' ('columna1',['columna2,... ']) VALUES ('valor1', ['valor2,...'])
Las cantidades de columnas y valores deben ser iguales. Si una columna no se
especifica, le será asignado el valor por omisión. Los valores especificados (o
implícitos) por la sentencia INSERT deberán satisfacer todas las restricciones
aplicables. Si ocurre un error de sintaxis o si alguna de las restricciones es violada,
no se agrega la fila y se devuelve un error.
EJEMPLO
INSERT INTO agenda_telefonica (nombre, numero)
VALUES ('Roberto Jeldrez', 4886850);

UPDATE | MODIFICACIÓN DE DATOS
Su uso permite modificar campos de los registros existentes en una tabla
existente, su sintaxis es la siguiente:
UPDATE Tabla SET campo1 = 'valor1', campo2 = 'valor2', campoN = 'valorN'
WHERE [Condición]
EJEMPLO
UPDATE Cliente SET Nombre = 'Mengano'
WHERE RutCli = 1

DELETE | ELIMINACION DE DATOS
Permite eliminar registros de una tabla existente, su sintaxis a continuación:
DELETE Tabla
WHERE [Condición]
EJEMPLO
DELETE Cliente
WHERE RutCli = 1
Definición de procedimientos
Almacenados
Un procedimiento almacenado es una colección con nombre de instrucciones de
Transact-SQL que se almacena en el servidor. Los procedimientos almacenados
son un método para encapsular tareas repetitivas. Admiten variables declaradas
por el usuario, ejecución condicional y otras características de programación muy
eficaces.
Por lo tanto, al tener estas características y precedentes, podemos ver o notar que
algunos procedimientos que se almacenan tienen su espacio, ubicándolo en un
lugar específico.
TIPOS DE PROCEDIMIENTOS ALMACENADOS:

Procedimientos almacenados del sistema (sp_) almacenados en la base de
datos master e identificados mediante el prefijo sp_, los procedimientos
almacenados del sistema proporcionan un método efectivo de recuperar
información de las tablas del sistema. Permiten a los administradores del sistema
realizar tareas de administración de la base de datos que actualizan las tablas del
sistema aunque éstos no tengan permiso para actualizar las tablas subyacentes
directamente. Los procedimientos almacenados del sistema se pueden ejecutar en
cualquier base de datos.

Procedimientos almacenados locales:
Los procedimientos almacenados locales se crean en las bases de datos de los
usuarios individuales.

Procedimientos almacenados temporales: Los procedimientos almacenados
temporales pueden ser locales, con nombres que comienzan por un signo de
almohadilla (#), o globales, con nombres que comienzan por un signo de
almohadilla doble (##). Los procedimientos almacenados temporales locales están
disponibles en la sesión de un único usuario, mientras que los procedimientos
almacenados temporales globales están disponibles para las sesiones de todos
los usuarios.
Los procedimientos almacenados remotos son una característica anterior de SQL
Server. Las consultas distribuidas admiten ahora esta funcionalidad.
 Procedimientos almacenados extendidos (xp_)
Los procedimientos almacenados extendidos se implementan como bibliotecas de
vínculos dinámicos que se ejecutan fuera del entorno de SQL Server.
Normalmente, se identifican mediante el prefijo xp_. Se ejecutan de forma similar
a los procedimientos almacenados.
Ventajas de los procedimientos
Almacenados
Un procedimiento almacenado es un programa (o procedimiento) el cual es
almacenado físicamente en una base de datos. Su implementación varía de
un gestor de bases de datos a otro. La ventaja de un procedimiento
almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es
ejecutado directamente en el motor de bases de datos, el cual usualmente corre
en un servidor separado. Como tal, posee acceso directo a los datos que necesita
manipular y sólo necesita enviar sus resultados de regreso al usuario,
deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de
datos salientes y entrantes.
Funciones
SQL Server proporciona numerosas funciones integradas y permite crear
funciones definidas por el usuario. Veamos dichas funciones para poder tener un
concepto apropiado de ellas y poder analizar más detalladamente su estructura.
Tipos de funciones:
Funciones de conjuntos de filas:
Devuelven un objeto que se puede utilizar como las referencias a tablas en una
instrucción SQL.

Funciones de agregado:
Operan sobre una colección de valores y devuelven un solo valor de
resumen.

Funciones de categoría:
Devuelven un valor de categoría para cada fila de una partición.
.

Funciones escalares:
Operan sobre un valor y después devuelven otro valor. Las funciones
escalares se pueden utilizar donde la expresión sea válida.

Funciones de conjuntos de filas:
Todas las funciones de conjuntos de filas son no deterministas. Por ello,
estas funciones no siempre devuelven el mismo resultado cada vez que se
llaman, incluso con el mismo conjunto de valores de entrada.

Funciones de agregado:
Las funciones de agregado realizan un cálculo sobre un conjunto de valores
y devuelven un solo valor. Si exceptuamos la función COUNT, todas las
funciones de agregado ignoran los valores NULL. Las funciones de
agregado se suelen utilizar con la cláusula GROUP BY de la instrucción
SELECT.
Todas las funciones de agregado son deterministas. Esto significa que las
funciones de agregado devuelven el mismo valor cada vez que se las llama
con un conjunto específico de valores de entrada

Funciones de categoría:
Las funciones de categoría devuelven un valor de categoría para cada fila
de una partición. Según la función que se utilice, algunas filas pueden
recibir el mismo valor que otras. Las funciones de categoría son no
deterministas.
.
Códigos de Base de datos
Este es un ejemplo de nuestro código, aunque no esta todo completo por que la otra parte
está adjunta a los archivos, pero claramente vemos su estructura dejando así claramente
la estructura general de la base de datos:
Use master
go
create database
on primary
(
name = HENRY_dat,
filename = 'C: \Archivos de programa\Microsoft SQL
Server\MSSQL.1\MSSQL\Data\HENRY.mdf',
size = 5,
maxsize = 40,
filegrowth = 3,
)
Use create table (cod_lector int,
Dni nvarchar (45)
nom_apellidos n varchar (70)
Dirección nvarchar
Teléfono nvarchar (20)
Distrito nvarchar (70),
)
Otros
Punto y coma después de las sentencias SQL
Algunos sistemas de bases de datos requieren un punto y coma al final de cada
sentencia SQL. El punto y como es un estándar que se para cada sentencia SQL
en sistemas de bases de datos que habilitan mas de una sentencia SQL ejecutada
en la misma llamada al servidor
Comillas en los campos de texto
SQL usa comillas simples en los valores de texto (muchos sistemas manejadores
de bases de datos aceptan comillas dobles).Para SQL los valores de texto deben
ser puestos entre comillas simples
Los valores numericos no deben ser puestos entre comillas
Para valores de texto:
Esta es la forma correcta:
SELECT *
FROM Personas
WHERE Nombre='Lucero'
Esta es la forma equivocada:
SELECT *
FROM Personas
WHERE Nombre=Lucero
Para valores numericos:
Esta es la forma correcta:
SELECT *
FROM Personas
WHERE P_id = 9
Esta es la forma incorrecta:
SELECT *
FROM Personas
WHERE P_id = '9'
Conclusión
Después de la presentación de la información, hemos llegado a la conclusión de lo
que en sí significa SQL SERVER y gran parte de su estructura interna, dejándonos
claro de que este sistema ofrece los mejores complementos en consideración a la
calidad de las presentaciones y la optimización que requieren las empresas,
encontramos estas funciones relacionadas con la básico que ofrece la paquetería
office creado por la misma empresa, pero con muchas mas características por
considerar que esta destinado para una organización.
De seguro no fue fácil elegir información con la intención de no hacer tan grande el
trabajo, ya que este tema es muy complejo o mejor dicho muy detallado, pero si
podemos decir que con esta información ya podemos tener las bases de como
poder hacer una base de datos compleja y con diferentes características para
guardar toda la información de una empresa.
Bibliografía
1. Implementing a database on Microsoft SQL Server 7.0.
Workbook
Microsoft Training and Certification
2. http://www.microsoft.com
3. http://www.microsoft.com/latam/soporte
4. http://windowsnt.about.com
5. http://support.microsoft.com/support/sql/70faq.asp
6. http://www.slideshare.net/Jilliankurusugawa/componentes-de-sql-server-2008
7. http://sql-principiantes.blogspot.com/