Subido por Rolando Lopez

Microsoft SQL Server

Anuncio
Es un Motor de base de datos que procesa
consultas
en
varias
arquitecturas
de
almacenamiento de datos como tablas locales,
tablas con particiones y tablas distribuidas en
varios servidores.
Que cuenta con las principales características:




Simplicidad en el Uso
Seguridad
Permite trabajar con Diferentes Formatos
Almacenamiento en la Nube
TRANSACT-SQL es un lenguaje muy potente que nos permite definir casi cualquier tarea que queramos
efectuar sobre la base de datos; incluye características propias de cualquier lenguaje de programación,
características que nos permiten definir la lógica necesaria para el tratamiento de la información:
• Tipos de datos.
• Definición de variables.
• Estructuras de control de flujo.
• Gestión de excepciones.
• Funciones predefinidas.
SELECT PRIMER_NOMBRE, PRIMER_APELLIDO,
TELEFONO INTO DATOS
FROM PERSONAS;
ALTER TABLE Customers
DROP COLUMN Email;
ALTER TABLE Customers
DROP COLUMN Sexo, continente;
ALTER TABLE table_name
ALTER COLUMN column_name datatype;
ALTER TABLE Customers
ALTER COLUMN sexo int;
Comando: Create Views
Sintaxis:
CREATE VIEW view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condition;
CREATE VIEW [Clientes_Brazil] AS
SELECT CompanyName, ContactName, Phone
FROM Customers
WHERE Country = ‘Brazil’;
REPLACE VIEW [Productos_Precio_Promedios] AS
SELECT ProductID, ProductName, UnitPrice
FROM Products
WHERE UnitPrice > (SELECT AVG(UnitPrice) FROM Products)
DROP VIEW [Productos_Precio_Promedios];
** Verificacion de llaves primarias contenida
En nuestra BDD**
SELECT *
FROM sys.key_constraints
WHERE type = 'PK';
2. CREATE TABLE Persons (
ID int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int
);
1. ALTER TABLE Persons
DROP PRIMARY KEY;
2. ALTER TABLE Persons
DROP CONSTRAINT PK_Person;
3. CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)
);
2. CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
UNIQUE (ID)
);
De la misma Forma Existen formar para Modificar la restricción ÚNICA
1. ALTER TABLE Persons
ADD UNIQUE (ID);
2. ALTER TABLE Persons
ADD CONSTRAINT UC_Person UNIQUE (ID,LastName);
1. ALTER TABLE Persons
DROP INDEX UC_Person;
2. ALTER TABLE Persons
DROP CONSTRAINT UC_Person;
***Consultar en toda la BDD
encontramos los campos Unica**
SELECT *
FROM sys.key_constraints
WHERE type = 'UQ';
donde
Vamos a Crear ambas Tablas
1. CREATE TABLE Orders (
OrderID int NOT NULL,
OrderNumber int NOT NULL,
PersonID int,
PRIMARY KEY (OrderID),
FOREIGN KEY (PersonID) REFERENCES Persons(PersonID)
);
2. CREATE TABLE Orders (
OrderID int NOT NULL PRIMARY KEY,
OrderNumber int NOT NULL,
PersonID
int FOREIGN KEY REFERENCES Persons(PersonID)
);
3. CREATE TABLE Orders (
OrderID int NOT NULL,
OrderNumber int NOT NULL,
PersonID int,
PRIMARY KEY (OrderID),
CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID)
REFERENCES Persons(PersonID)
);
3. CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
City varchar(255),
CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
);
SELECT *
FROM sys.check_constraints
WHERE parent_object_id = OBJECT_ID('nombreTabla');
1. CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
City varchar(255) DEFAULT 'Sandnes'
);
2. CREATE TABLE Orders (
ID int NOT NULL,
OrderNumber int NOT NULL,
OrderDate date DEFAULT GETDATE()
);
1. ALTER TABLE Persons
ALTER City SET DEFAULT 'Sandnes';
2. ALTER TABLE Persons
ADD CONSTRAINT df_City
DEFAULT 'Sandnes' FOR City;
3. ALTER TABLE Persons
ALTER COLUMN City SET DEFAULT 'Sandnes';
1. ALTER TABLE Persons
ALTER City DROP DEFAULT;
2. ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT;
— Cantidad vendida del producto con
código 23
select sum(Od.Quantity) As ‘Unidades
Producto 23’
from [Order Details] As OD where
ProductID = 23
— Cantidad de órdenes generadas y
monto total vendido del Empleado
con código 3
select Count(O.OrderID) As ‘Cantidad’,
SUM(O.Freight) As ‘Monto Total’
from Orders As O where EmployeeID = 3
Raw MODE
SELECT e.EmployeeID, c.FirstName, c.MiddleName,
c.LastName
Raw AUTO
FROM HumanResources.Employee e INNER JOIN
Person.Contact c
SELECT Employee.EmployeeID, ContactInfo.FirstName,
ON c.ContactID = e.ContactID
ContactInfo.MiddleName, ContactInfo.LastName
WHERE c.FirstName = 'Rob'
FROM HumanResources.Employee AS Employee
FOR XML RAW ('Employee');
INNER JOIN Person.Contact AS ContactInfo
ON ContactInfo.ContactID = Employee.ContactID
WHERE ContactInfo.FirstName = 'Rob'
FOR XML AUTO, ROOT ('Employees');
***Ejecutar el SP, se puede ejecutar de las siguiente formas:
Execute spShippersInsertaNuevo ‘Chasqui’,’87545852′
go
Execute spShippersInsertaNuevo
@Fono = ‘345435645’, @NombreEmpresa =’Ford’
go
Execute spShippersInsertaNuevo
@NombreEmpresa =’Turbo XD’, @Fono = ‘8569856’
go
***Procedimiento para el listado de productos de una
determinada categoría***
Create procedure spProductosListadoPorCategoria
(
@CategoriaCodigo int
)
As
select P.ProductID, P.ProductName,
P.UnitPrice , P.UnitsInStock, P.UnitsOnOrder
from Products As P
where CategoryID = @CategoriaCodigo
go
**Ejecutar el SP
**Productos de categoria 2
Execute spProductosListadoPorCategoria 2
go
CREATE Function Tabla(@IdEmpleado int)
Returns Table
AS
Return (Select
dbo.enMayusculas(PersNombre) Nombre,
PersFecNacimiento, PersActivo
From Personas WHERE PersId =
@IdEmpleado)
--Ejecutar
Select * From dbo.Tabla
Descargar