Guía SQL y MVC: Comandos DDL, DML y Arquitectura Model-View-Controller

Informática y Telecomunicaciones3,19 KB

Comandos SQL: creación, modificación y consulta de tablas

Creación de tablas

A continuación se muestra la creación de la tabla MY_EMP:

CREATE TABLE MY_EMP (
  ID NUMBER(7) PRIMARY KEY,
  LAST_NAME VARCHAR(25) NOT NULL,
  FIRST_NAME VARCHAR(25) NOT NULL,
  SEX_TYPE CHAR(1) CHECK (SEX_TYPE IN ('F','M')),
  DEPT_ID NUMBER(7) CHECK (DEPT_ID > 0)
);

Modificación de tablas

Agregar una columna a la tabla MY_DEPART:

ALTER TABLE MY_DEPART
ADD DEPT_ID NUMBER;

Agregar una restricción de clave foránea:

ALTER TABLE MY_DEPART
ADD CONSTRAINT FK_DEPT_ID FOREIGN KEY (DEPT_ID) REFERENCES MY_DEPART(CODIGO);

Creación de la tabla EMP con restricciones

CREATE TABLE EMP (
  EMPNO NUMBER(4),
  ENAME VARCHAR2(10),
  JOB CHAR(9),
  MGR NUMBER(4),
  HIREDATE DATE,
  SAL NUMBER(7,2),
  COMM NUMBER(7,2),
  DEPTNO NUMBER(2) NOT NULL,
  CONSTRAINT PK_EMPNO PRIMARY KEY (EMPNO),
  CONSTRAINT FK_DEPT FOREIGN KEY (DEPTNO) REFERENCES DEPT(DEPTNO),
  CONSTRAINT FK_MGR FOREIGN KEY (MGR) REFERENCES EMP(EMPNO)
);

Manipulación de datos (DML)

Inserción de registros

INSERT INTO MY_EMP (ID, LAST_NAME, FIRST_NAME, SEX_TYPE, DEPT_ID)
VALUES (2549, 'MARIA', 'JOAQUINA', 'F', 7895);

Actualización de registros

UPDATE CUSTOMER
SET CREDITLIMIT = CREDITLIMIT * 1.05
WHERE REPID = '7844';
UPDATE CUSTOMER
SET ADDRESS = '333 SENADOR VERGUEIRO'
WHERE CUSTID = 105;

Puntos de control y reversión

SAVEPOINT SAVE1;
ROLLBACK SAVE2;

Consultas (SELECT)

SELECT ENAME, SAL, TO_CHAR(HIREDATE, 'DD/MM/YYYY')
FROM EMP
WHERE SUBSTR(ENAME, 1, 1) = 'A';
SELECT ENAME, HIREDATE, SAL, D.DNAME
FROM EMP E
JOIN DEPT D ON E.DEPTNO = D.DEPTNO
GROUP BY ENAME, HIREDATE, SAL, D.DNAME;
SELECT D.DNAME, COUNT(E.ENAME), SUM(E.SAL)
FROM EMP E
JOIN DEPT D ON E.DEPTNO = D.DEPTNO
GROUP BY D.DNAME
HAVING COUNT(E.ENAME) > 3;

Patrón de arquitectura MVC

MVC (Model-View-Controller): este artículo presenta el patrón de arquitectura MVC, mostrando cómo un diagrama de clases construido según ese patrón se transforma en código Java. El foco principal está en la capa Model, implementada mediante el patrón DAO y la base de datos MySQL.

Model-View-Controller

Modelo (Model)

  • Representa la lógica del negocio.
  • Aloja las entidades de la aplicación.
  • Puede interactuar con la base de datos.
  • Guarda la lógica y el estado del negocio, conoce las reglas para recuperar y alterar dicho estado.

Vista (View)

  • Responsable de la presentación y de exibir la información al usuario.
  • Recupera el estado del modelo a través del controlador.
  • Obtiene la entrada del usuario y la repasa al controlador.

Controlador (Controller)

  • Hace de intermediario ("meio de campo") entre la vista y el modelo.

Descargar

PDF Word HTML