Está en la página 1de 48

Clase Base de Datos

Ing. Fernando ngel Galindo Tunqui


Agenda
Bases de Datos Relacionales
SQL Server 2005
Instalacin
Computer Manager
SQL Server Management Studio
Object Explorer
Project Management
Query Editor
Assisted Editors
SQLiMail
Sentencias Transact-SQL
Agenda
Bases de Datos Relacionales
SQL Server 2005
Instalacin
Computer Manager
SQL Server Management Studio
Object Explorer
Project Management
Query Editor
Assisted Editors
SQLiMail
Sentencias Transact-SQL
Se organizan por Tablas
Contiene Filas y Columnas
Una columna representa un campo en la tabla
Los valores de una columna tienen un tipo de dato
definido
Las tablas pueden contener Claves Primarias
(Primary Key) y/o Claves Foraneas
Utilizando Claves entre tablas obtenemos una
integridad referencial entre ellas
Utilizacin de Indices mejora el rendimiento en la
bsqueda
Ejemplo a continuacin
Base de Datos Relacionales
B
a
s
e
s

d
e

D
a
t
o
s

R
e
l
a
c
i
o
n
a
l
e
s

Base de Datos Relacionales
B
a
s
e
s

d
e

D
a
t
o
s

R
e
l
a
c
i
o
n
a
l
e
s

Agenda
Bases de Datos Relacionales
SQL Server 2005
Instalacin
Computer Manager
SQL Server Management Studio
Object Explorer
Project Management
Query Editor
Assisted Editors
SQLiMail
Sentencias Transact-SQL
El Lenguaje de programacin Transact-SQL
Tipos de intrucciones de Transact-SQL
Elementos de sintaxis del Transact-SQL
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Implementa el estndar ISO de nivel bsico de la
especificacin ANSI-SQL99

Se pueden ejecutar desde cualquier producto que
cumpla los requisitos bsicos

Incluye una funcionalidad ampliada
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Instrucciones del Lenguaje de definincion de datos (DDL)

Instrucciones del Lenguaje de Control de Datos (DCL)

Instrucciones del Lenguaje de tratamientos de datos (DML)
Tipos de intrucciones
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Definen los objetos de la base de datos
CREATE nombreobjeto
ALTER nombreobjeto
DROP nombreobjeto

Deben tener los permisos adecuados
Tipos de intrucciones
Instruciones del Lenguaje de definicion de datos
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Establecer o cambiar los permisos
GRANT
DENY
REVOKE

Deben tener los permisos adecuados
Tipos de intrucciones
Instruciones del Lenguaje de control de datos
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Las instrucciones DML se utilizan para cambiar datos
o recuperar informacin
SELECT
INSERT
UPDATE
DELETE

Deben tener los permisos adecuados
Tipos de intrucciones
Instruccines del Lenguaje de Tratamiento de datos
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

GO
Envia lotes de instrucciones de TSQL a las herramientas y
utilidades
No se trata, realmente, de una instruccin de TSQL

EXEC
Ejecuta una funcion definida por el usuario, un
prodecimiento de sistema, un prodecimiento definido por el
usuario o un prodecimiento almacenado extendido
Controla la ejecucin de una cadena de caracteres dentro de
un lote de TSQL
Elementos de la sintaxis de Transact-SQL
Directivas de proceso por lotes
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Comentarios en lnea



Comentarios en Bloque
Elementos de la sintaxis de Transact-SQL
Comentarios
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Nmeros Enteros
Bigint
Nmeros enteros entre -2E63 (-9.223.372.036.845.775.808) y 2E-
63 (9.223.372.036.845.775.807)
Int
Nmeros enteros entre -2E31 (-2,147,483,648 ) y 2E-
31(2,147,483,647 )
Smallint
Nmeros enteros entre 2E15 (-32.768) y 2E-15 (32.767)
Tinyint
Nmeros enteros entre 0 y 255
Bit
Bit
Enteros entre 0 y 1
DataTypes
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Decimal y nmericos
Decimal
Dtos nmericos con precisin fija de -10E38 a 10E-38
Numeric
Funcin equivalente a decimal

Money & SmallMoney
Money
Valores monetarios entre -2E63 y 2E63-1 con precisin de hasta
10 dgitos.
SmallMoney
Valores monetarios entre -214.748,3648 y +214.748,3647
DataTypes
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Nmeros aproximdos
Float
Dtos numricos de punto flotante entre -1.79E+308 y
1.79E+308
Real
Dtos numricos de punto flotante entre -3.40E+38 y 3.40E+38

Datetime & Smalldatetime
Datetime
Fechas entre 1 de Enero del 1753 y 31 de diciembre de 9999 con
una precisin de 3 milsimas de segndo

Smalldatetime
Fechas entre 1 de Enero de 1900 y 6 de Junio de 2079, con una
precisin de 1 minto
DataTypes
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Caracteres
Char
Carcter de longitud fija (no unicode) con un mximo de 8000
caracteres
Varchar
Caracteres de longitud variable (no unicode) con un mximo de 8000
caracteres
Text
Caracteres de longitud variable (no unicode) con un mximo de
2.147.483.647 caracteres
Nchar
Carcter de longitud fija (unicode) con un mximo de 4000 caracteres
Nvarchar
Caracteres de longitud variable (unicode) con un mximo de 8000
caracteres
Ntext
Caracteres de longitud variable (unicode) con un mximo de
1,073,741,823 caracteres
DataTypes
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Binary
Binary
Datos binarios de longitud fija con un mximo de 8000 bytes
Varbinary
Datos binarios de longitud variable con un mximo de 8000
bytes
Image
Datos binarios de lngitud variable con un mximo de
2.147.483.647 bytes
DataTypes
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Operadores Aritmticos
Operadores de Asignacin
Operadores Bitwise
Operadores de Comparacin
Operadores Lgicos
Operadores de Concatenacin
Operadores Unarios
Operadores
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Realizan operaciones matemticas entre dos
expresiones
Operadores aritmticos
+ (suma)
- (resta)
* (Muliplicacin)
/ (Divisin)
% (Mdulo) , devuelve el resto Devuelve el resto entero de
una divisin. Por ejemplo, 12 % 5 = 2 porque el resto de 12
dividido entre 5 es 2.
Operadores Aritmticos
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Operadores de Asignacin

Operadores de Asignacin
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Operadores bit a bit
& (operador bit a bit AND)
Realiza una operacin lgica AND a nivel de bit entre dos
valores enteros.
| (operador bit a bit OR)
Realiza una operacin OR lgica a nivel de bit entre dos
valores enteros dados que se convirtieron a expresiones
binarias dentro de instrucciones de Transact-SQL.
^ (operador bit a bit OR exclusivo)
Realiza una operacin OR exclusivo a nivel de bit entre dos
valores enteros dados que se convierten a expresiones
binarias dentro de instrucciones de Transact-SQL.

Operadores bit a bit
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Operadores de comparacin
= (igual al)
> (mayor que)
< (menor que)
>= (mayor que o igual que)
<= (menor que o igual que)
<> (no es igual a)
!= (no es igual a)
!< (no es menor que)
!> (no es mayor que)
Operadores de comparacin
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Comprueban la veracidad de alguna condicin
Operadores Lgicos
ALL
AND
ANY
BETWEEN
EXISTS
IN
LIKE
NOT
OR
SOME
Operadores lgicos
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Permite concatenar cadenas de textos

Operadores de concatenacin
Signo + (mas)
Operadores de concatenacin de cadenas
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Los operadores unarios realizan una operacin sobre
una nica expresin de cualquiera de los tipos de
datos de la categora del tipo de datos numrico.
+ (positivo)
Es un operador unario que devuelve el valor positivo de una
expresin numrica (un operador unario).
- (negativo)
Es un operador unario que devuelve el valor negativo de una
expresin numrica (un operador unario).
~ (operador bit a bit NOT)
Realiza una operacin NOT lgica a nivel de bit en un valor entero
dado que se convierte a una expresin binaria dentro de
instrucciones de Transact-SQL.
Operadores unarios
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La sintaxis para crear tablas es:
CREATE TABLE "table_name"
("column 1" "data_type_for_column_1",
"column 2 "data_type_for_column_2",... )


Crear Tablas
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La sintaxis para insertar registros es:
Insert into <tablename>
(<fieldname>, <fieldname>, <fieldname>)
Values
(@fieldname, @fieldname, @fieldname);

Sentencia de INSERT
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

sta tcnica es usada para copiar datos desde una tabla a la
tabla indicada
La sintaxis para insertar copiando registros de otra tabla es
insert new_studentdetails
select id_number, passwd from studentdetails


INSERT FROM
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La sentencia SELECT es usada para seleccionar registros desde
una tabla de la base de datos
SELECT <Col_1>, <Col_2>,
FROM <Table_name>

Ej:

SELECT
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La sentencia SELECT INTO es usado para copiar los registros
seleccionados de una tabla e insertarla en una tabla diferente al
mismo tiempo
La sintaxis es la siguiente:
SELECT Column1, Column2, Column3,
INTO Table2 FROM Table1

SELECT *
INTO Customers_copy FROM Customers
SELECT INTO
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La clausula DISTINCT es usada para devolver slo los valores
en la expresin especificada
DISTINCT
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La clausula WHERE es utilizada para seleccionar datos
condicionalmente en base a criterios especificados

SELECT * FROM Customers
WHERE LastName <> 'Smith

SELECT * FROM Customers
WHERE DOB > '1/1/1970

SELECT * FROM Customers
WHERE DOB >= '1/1/1970

WHERE
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

WHERE - EJEMPLO
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

WHERE con LIKE
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Funciones de Agregado
Funciones de Agregado:
AVG
COUNT
MIN
MAX
SUM
STDEV

Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Funciones de Agregado - Ejemplo
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Funciones Matemticas
Funciones Matemticas

ABS SQRT
RAND SQUARE
SIN POWER
COS CEILING
TAN FLOOR
COT EXP

Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Funciones de Texto
Funciones de Texto

LEFT
RIGHT
LTRIM
RTRIM
REPLACE
SUBSTRING
STUFF
REVERSE
CHAR
LEN
LOWER
UPPER

Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Funciones de Fecha
Funciones de Fecha

DATEADD
DATEDIFF
GETDATE
DAY
MONTH
YEAR

Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La clausula ORDER BY es usado para ordernar los registros de
una sentencia SELECT previamente indicada
La sintaxis es la siguiente:
[ ORDER BY { order_by_expression [ ASC | DESC ] } [ ,...n] ]
ORDER BY
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

La sentencia UPDATE es utilizada para modificar los valores de
los registros especirficando algn criterio.
La sintaxis es la siguiente:
UPDATE tablename SET (campo1 = valor1, campo2 = valor2,) WHERE
Campo4 = Criterio1
UPDATE
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

sta sentencia elimina los registros que especifiquemos dentro
de la clausula WHERE
La sintaxis es la siguiente:
DELETE FROM tablename WHERE Campo4 = Criterio1
DELETE
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Un procedimiento almacenado es un grupo de instrucciones
compiladas en un nico plan de ejecucin

Parmetros de salida, que pueden devolver datos (por ejemplo, un
valor entero o de carcter) o una variable de cursor (los cursores
son conjuntos de resultados que pueden devolver filas de una en
una).

Cdigos de retorno, que siempre son un valor entero.

Un conjunto de resultados por cada instruccin SELECT contenida
en el procedimiento almacenado o en cualquier otro procedimiento
almacenado invocado por el procedimiento almacenado original.

Un cursor global al que se puede hacer referencia desde fuera del
procedimiento almacenado.
STORE PROCEDURE
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

STORE PROCEDURE Crear un SP
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

STORE PROCEDURE Consumir
Sentencias Transact-SQL
T
r
a
n
s
a
c
t
-
S
Q
L

Demo
Crear un Base de Datos con tablas, campos y registros

También podría gustarte