You are on page 1of 9

TECNOLÓGICO​​NACIONAL​​DE​​MÉXICO

INSTITUTO TECNOLÓGICO DE TIJUANA

SUBDIRECCIÓN ACADÉMICA
DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN

SEMESTRE:
Enero - Junio 2024

CARRERA:
Ingeniería Informática

MATERIA:
Taller de Base de Datos

TÍTULO ACTIVIDAD:​​
A1.5 Definición del esquema de integridad

UNIDAD​​A​​EVALUAR:​
Unidad I

NOMBRE Y NÚMERO DE CONTROL DEL ALUMNO:

Preciado Becerra José - 21212356

NOMBRE DEL MAESTRO (A):


Gabriela Lourdes Tapia González
Índice

Índice............................................................................................................................................. 1
Adventure Works Human Resources............................................................................................ 2
Código Human Resources.......................................................................................................2
Diagrama de Human Resources............................................................................................. 8

1
Adventure Works Human Resources
Código Human Resources

CREATE TABLE Department (

DepartmentID SMALLINT IDENTITY (1,1) NOT NULL,

Name NVARCHAR (50) NOT NULL,

GroupName NVARCHAR (50) NOT NULL,

ModifiedDate DATETIME DEFAULT GETDATE() NOT NULL,

CONSTRAINT PK_Department_DepartmentID PRIMARY KEY CLUSTERED

DepartmentID ASC

);

GO

CREATE TABLE Employee(

BusinessEntityID INT NOT NULL,

NationalIDNumber NVARCHAR(15) NOT NULL,

LoginID NVARCHAR(256) NOT NULL,

OrganizationNode HIERARCHYID NULL,

OrganizationLevel AS (OrganizationNode.GetLevel()),

JobTitle NVARCHAR(50) NOT NULL,

BirthDate DATE NOT NULL,

MaritalStatus NCHAR(1) NOT NULL,

Gender NCHAR(1) NOT NULL,

HireDate DATE NOT NULL,

SalariedFlag int NOT NULL,

VacationHours SMALLINT NOT NULL,

2
SickLeaveHours SMALLINT NOT NULL,

CurrentFlag int NOT NULL,

rowguid UNIQUEIDENTIFIER ROWGUIDCOL NOT NULL,

ModifiedDate DATETIME NOT NULL,

CONSTRAINT PK_Employee_BusinessEntityID PRIMARY KEY CLUSTERED

BusinessEntityID ASC

);

GO

CREATE TABLE EmployeeDepartmentHistory (

BusinessEntityID INT NOT NULL,

DepartmentID SMALLINT NOT NULL,

ShiftID TINYINT NOT NULL,

StartDate DATE NOT NULL,

EndDate DATE NOT NULL,

ModifiedDate DATETIME DEFAULT GETDATE() NOT NULL,

CONSTRAINT PK_EmployeeDepartmentHistory_BusinessEntityID_StartDate_DepartmentID
PRIMARY KEY CLUSTERED

BusinessEntityID ASC,

StartDate ASC,

DepartmentID ASC,

ShiftID ASC

);

3
GO

CREATE TABLE EmployeePayHistory (

BusinessEntityID INT NOT NULL,

RateChangeDate DATETIME DEFAULT GETDATE () NOT NULL,

Rate MONEY NOT NULL,

PayFrequency TINYINT NOT NULL,

ModifiedDate DATETIME DEFAULT GETDATE() NOT NULL,

CONSTRAINT PK_EmployeePayHistory_BusinessEntityID_RateChangeDate PRIMARY KEY


CLUSTERED

BusinessEntityID ASC,

RateChangeDate ASC

);

GO

CREATE TABLE JobCandidate(

JobCandidateID int IDENTITY (1,1) NOT NULL,

BusinessEntityID INT NULL,

ModifiedDate datetime NOT NULL,

CONSTRAINT PK_JobCandidate_JobCandidateID PRIMARY KEY CLUSTERED

JobCandidateID ASC

);

GO

4
CREATE TABLE Shift (

ShiftID TINYINT IDENTITY(1,1) NOT NULL,

Name varchar (50) NOT NULL,

StartTime TIME (7) NOT NULL,

EndTime TIME (7) NOT NULL,

ModifiedDate DATETIME DEFAULT GETDATE() NOT NULL,

CONSTRAINT PK_Shift_ShiftID PRIMARY KEY CLUSTERED

ShiftID ASC

);

GO

CREATE TABLE Person(

BusinessEntityID INT NOT NULL,

PersonType NCHAR(2) NOT NULL,

NameStyle int NOT NULL,

Title NVARCHAR(8) NULL,

FirstName VARCHAR (50) NOT NULL,

MiddleName VARCHAR (50) NOT NULL,

LastName VARCHAR (50)NOT NULL,

Suffix NVARCHAR(10) NULL,

EmailPromotion INT NOT NULL,

rowguid UNIQUEIDENTIFIER ROWGUIDCOL NOT NULL,

ModifiedDate DATETIME NOT NULL,

CONSTRAINT PK_Person_BusinessEntityID PRIMARY KEY CLUSTERED

5
BusinessEntityID ASC

);

GO

CREATE TABLE SalesPerson(

BusinessEntityID INT NOT NULL,

TerritoryID INT NULL,

SalesQuota MONEY NULL,

Bonus MONEY NOT NULL,

CommissionPct SMALLMONEY NOT NULL,

SalesYTD MONEY NOT NULL,

SalesLastYear MONEY NOT NULL,

rowguid UNIQUEIDENTIFIER ROWGUIDCOL NOT NULL,

ModifiedDate DATETIME NOT NULL,

CONSTRAINT PK_SalesPerson_BusinessEntityID PRIMARY KEY CLUSTERED

BusinessEntityID ASC

);

GO

ALTER TABLE Employee ADD CONSTRAINT FK_Employee_Person_BusinessEntityID FOREIGN


KEY([BusinessEntityID])

REFERENCES Person (BusinessEntityID)

GO

ALTER TABLE Employee CHECK CONSTRAINT [FK_Employee_Person_BusinessEntityID]

GO

6
ALTER TABLE EmployeeDepartmentHistory ADD CONSTRAINT
FK_EmployeeDepartmentHistory_Department_DepartmentID FOREIGN KEY(DepartmentID)

REFERENCES Department (DepartmentID)

GO

ALTER TABLE EmployeeDepartmentHistory CHECK CONSTRAINT


FK_EmployeeDepartmentHistory_Department_DepartmentID

GO

ALTER TABLE EmployeeDepartmentHistory WITH CHECK ADD CONSTRAINT


FK_EmployeeDepartmentHistory_Employee_BusinessEntityID FOREIGN KEY(BusinessEntityID)

REFERENCES Employee (BusinessEntityID)

GO

ALTER TABLE EmployeeDepartmentHistory CHECK CONSTRAINT


FK_EmployeeDepartmentHistory_Employee_BusinessEntityID

GO

ALTER TABLE EmployeeDepartmentHistory WITH CHECK ADD CONSTRAINT


FK_EmployeeDepartmentHistory_Shift_ShiftID FOREIGN KEY(ShiftID)

REFERENCES Shift (ShiftID)

GO

ALTER TABLE EmployeeDepartmentHistory CHECK CONSTRAINT


FK_EmployeeDepartmentHistory_Shift_ShiftID

GO

ALTER TABLE EmployeePayHistory WITH CHECK ADD CONSTRAINT


FK_EmployeePayHistory_Employee_BusinessEntityID FOREIGN KEY(BusinessEntityID)

REFERENCES Employee (BusinessEntityID)

GO

ALTER TABLE EmployeePayHistory CHECK CONSTRAINT


FK_EmployeePayHistory_Employee_BusinessEntityID

GO

ALTER TABLE JobCandidate WITH CHECK ADD CONSTRAINT


FK_JobCandidate_Employee_BusinessEntityID FOREIGN KEY(BusinessEntityID)

REFERENCES Employee (BusinessEntityID)

GO

ALTER TABLE JobCandidate CHECK CONSTRAINT FK_JobCandidate_Employee_BusinessEntityID

7
GO

ALTER TABLE SalesPerson WITH CHECK ADD CONSTRAINT FK_SalesPerson_BusinessEntityID


FOREIGN KEY(BusinessEntityID)

REFERENCES Employee (BusinessEntityID)

GO

Diagrama de Human Resources

You might also like