programacion de sistemas
Para ello crearemos las tablas necesarias para modelizar el siguiente diagrama entidad-relación básico para una empresa de una empresa mayorista:
• CREATE TABLE CLIENTE (
• DNI VARCHAR2(10),
• &lNOMBRE VARCHAR2(20),
• FECHA_NAC DATE NOT NULL,
• TFNO VARCHAR2(10),
• APELLIDOS VARCHAR2(100),
• CONSTRAINT CLIENTE_PK PRIMARY KEY (DNI)• )
• CREATE TABLE PROVEEDOR(
• NIF VARCHAR2(10),
• NOMBRE VARCHAR2(20),
• DIRECCION VARCHAR2(200),
• CONSTRAINT PROVEEDOR_PK PRIMARY KEY (NIF)
• )
• CREATE TABLE PRODUCTO(
• NOMBRE VARCHAR2(50),
• CODIGO VARCHAR2(50),
• PRECIO NUMBER(10) NOT NULL,
• PRV_NIF VARCHAR2(10),
• CONSTRAINT PRODUCTO_PK PRIMARY KEY (CODIGO),
• CONSTRAINT PROVEEDOR_FK FOREIGN KEY(PRV_NIF)REFERENCES PROVEEDOR (NIF)
• )
• CREATE TABLE CLIENTE_PRODUCTO(
• PRD_CODIGO VARCHAR(50),
• CLN_DNI VARCHAR(10),
• CONSTRAINT CLIENTE_PRODUCTO_PK PRIMARY KEY (PRD_CODIGO, CLN_DNI),
• CONSTRAINT PRODUCTOCP_FK FOREIGN KEY (PRD_CODIGO) REFERENCES PRODUCTO(CODIGO),
• CONSTRAINT CLIENTECP_FK FOREIGN KEY (CLN_DNI) REFERENCES CLIENTE(DNI)
• )
CREATE : Este comando crea un objetodentro de la base de datos. Puede ser una tabla, vista, índice, trigger, función, procedimiento o cualquier otro objeto que el motor de la base de datos soporte.
Ejemplo (crear una tabla)
CREATE TABLE 'TABLA_NOMBRE'
'CAMPO_1' INT,
'CAMPO_2' STRING
DROP : Este comando elimina un objeto de la base de datos. Puede ser una tabla, vista, índice, trigger, función, procedimiento o cualquier otroobjeto que el motor de la base de datos soporte. Se puede combinar con la sentencia ALTER.
Ejemplo
ALTER TABLE ''TABLA_NOMBRE''
(
DROP COLUMN ''CAMPO_NOMBRE1''
)
ALTER : Este comando permite modificar la estructura de un objeto. Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, modificar un trigger, etc.
Ejemplo (agregarcolumna a una tabla)
ALTER TABLE 'TABLA_NOMBRE' (
ADD NUEVO_CAMPO INT UNSIGNED meel
)
TRUNCATE: 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 losregistros, 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 ''TABLA_NOMBRE1''
COMANDOS DML
SELECT
La sentencia SELECT nos permite consultar losdatos almacenados en una tabla de la base de datos.
Ejemplo:
SELECT "nombre_ columna" FROM "nombre_ tabla"
Para ilustrar el ejemplo anterior, suponga que tenemos la siguiente tabla:
INSERT
Una sentencia INSERT de SQL agrega uno o más registros a una (y sólo una) tabla en una base de datos relacional.
Ejemplo:
Forma básica
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 sedevuelve un error.
Ejemplo
INSERT INTO agenda_telefonica (nombre, numero) VALUES ('Roberto Jeldrez', 4886850);
Cuando se especifican todos los valores de una tabla, se puede utilizar la sentencia acortada:
INSERT INTO ''tabla'' VALUES (''valor1'', [''valor2,...''])
Ejemplo (asumiendo que 'nombre' y 'número' son las únicas columnas de la tabla 'agenda_telefonica'):
INSERT INTO...
Regístrate para leer el documento completo.