ORACLE : Modificar Estructura de Tablas

La modificación de la estructura de las tablas con el uso de ALTER permite:
- Agregar nuevas columnas a las tablas.
- Modificar el ancho de la columna.
- Modificar el tipo de datos de la columna(en este caso la columna no tiene que tener datos).
- Modificar la longitud de una columna.

EJEMPLO 1:
ALTER TABLE Clientes
ADD ( saldo integer, sucursal char )

En el ejemplo anterio le agregamos a la tabla CLientes la columna Saldo de tipo entero y la columna Sucursal de tipo caracter.

EJEMPLO 2 :
ALTER TABLE Clientes
MODIFY ( Nombre char(50) );

En el Ejemplo anterior modificamos la longitud del campo Nombre de la tabla clientes que era de tipo caracter que era de char(40) a char(50)

ORACLE - Creación de Secuencias para campos autonumericos

La codificación numérica de por ejemplo un producto se puede realizar con una creación de una secuencia que automáticamente genera los números enteros en orden ascendente, no siendo necesario recordar cuál fue el último número asignado ; esto evita la duplicidad de códigos.

La secuencia es un objeto que genera valores enteros únicos y se emplean para crear claves primarias numéricas, con el uso del siguiente mandato:

CREATE SEQUENCE codigo_producto INCREMENT BY 1 START WITH 100;

En este caso el primer numero generado será 100, porque le pusimos que comience desde 100


Para registrar un nuevo código con la secuencia definida anteriormente se usa la columna codigo_producto.NEXTVAL, la cual nos dará el siguiente valor que le corresponde a la secuencia.

Para conocer el valor actual de la secuencia, o sea, el último código asignado, se usa la columna codigo_producto.CURRVAL, desde la tabla DUAL del sistema, cuyo fin es poder consultar pseudo_columnas :

SELECT usuario,sysdate,codigo_producto.currval FROM DUAL;

donde:

1.- usuario es el nombre del usuario
2.- sysdate es la fecha del sistema
3.- codigo_producto.currval es el último valor asignado a la secuencia.

EJEMPLO:
INSERT INTO PRODUCTOS_SUC VALUES( codigo_producto.NEXTVAL,'ZAPATOS' );

ORACLE - Funciones de Conversión : To_number

La funcion to_number convierte un texto en un numero.

La sintaxis es :
to_number( texto1, [ format_mask ], [ nls_language ] )
texto1 es un texto que querra ser convertido en numero.
format_mask es opcional. Este es el formato que será usado para convertir el texto1 en numero
nls_language es opcional. Este es el lenguaje usado en convertir texto1 en numero.

Ejemplo:
to_number('981.53', 9999.99') retornará el numero 981.53
to_number('225', '999') retornará el numero 225
to_number('23', '99') retornará el numero 23

Tanto el formato como el lenguaje son opcionales, por lo cual usted podrá convertir un texto en numero de una forma simple, por ejemplo:
to_number('1210.73'') would return the number 1210.73