Creo que esta es una necesidad que no se da tan frecuentemente, pero en algún minuto puede ser necesario, como me paso a mi. Saber a que tabla o tablas corresponde un campo. Esta consulta me ha salvado varias veces , de modo que la comparto:
SELECT OWNER, TABLE_NAME , COLUMN_NAME , DATA_TYPE , DATA_LENGTH
FROM ALL_TAB_COLUMNS
WHERE COLUMN_NAME LIKE 'nombre_campo'
ORDER BY 2;
Donde:
nombre_campo es el nombre del campo buscado , el cual puede llevar comodines como %nombre_campo, o nombre_campo%, etc.
martes, 10 de enero de 2012
domingo, 8 de enero de 2012
Cambiar texto a mayúscula o minúscula en VI
Para los programadores que nos gusta mantener una nomenclatura al declarar variables o el código fuente en general, aveces, necesitamos convertir alguna palabra o linea a mayúsculas o minúsculas.Obviamente, todo esto se puede hacer en VI.
En modo de comando, te posicionas al inicio de la palabra.
Convertir palabra a mayúscula
gUw
Convertir palabra a minúscula
guw
Para convertir una linea completa a mayúscula
gU$
gUU
Para convertir una linea completa a minúscula
gu$
guu
jueves, 29 de diciembre de 2011
Como comentar código con VI
Para comentar varias lineas de código fuente en VI, se usa la siguiente orden (ejemplificada):
:4,18 s/^/# /
De acuerdo al ejemplo. Se inserta el símbolo # desde la fila 4 hasta la 18. Dependiendo del lenguaje en que estés programando el carácter # lo puedes reemplazar por el que corresponda a comentarios.
Para mostrar los números de lineas se usa:
:set nu
No such file or directory
No such file or directory . Es un error que parece evidente, pero al mismo tiempo desconcierta. Sobre todo si vez el código y este esta bien escrito.
Me ocurrió con una shell, la cual tiene que acceder a un directorio y ejecutar desde ese lugar otras shell. Y al momento de ejecutar: cd directorio , aparecía este error.
Lo que no les he comentado es que la shell la escribí en Windows y luego la pase al entorno de trabajo Linux. De ahí que la solución pase por cambiar el formato del archivo, con las instrucciones que detallo a continuación:
Abrir el archivo con vi o vim.
vi archivo
Aplicar formato unix.
:set fileformat=unix
:wq!
o bien, desde la consola
dos2unix archivo
Si te encuentras con este error, verifica que sea el formato.
miércoles, 28 de diciembre de 2011
ORA-01858 - se ha encontrado un carácter no numérico (Solucionado)
Me encontré con este error: ORA-01858. Al hacer una comparación de fechas.
ORA-01858: se ha encontrado un carácter no numérico donde se esperaba uno numérico
01858. 00000 - "a non-numeric character was found where a numeric was expected"
*Cause: The input data to be converted using a date format model was
incorrect. The input data did not contain a number where a number was
required by the format model.
*Action: Fix the input data or the date format model to make sure the
elements match in number and type. Then retry the operation.
En la consulta uso lo siguiente:
..
WHERE TO_DATE(DEACTIVATION_DATE,'DDMMYY')=TO_DATE(SYSDATE,'DDMMYY')-1;
La causa de este error, es que dado el formato, no se encuentran los valores numéricos en el lugar que son requeridos.
Y la solución es formatear correctamente las fechas:
..
WHERE TO_DATE(DEACTIVATION_DATE,'dd-mm-yy')=TO_DATE(SYSDATE,'dd-mm-yy')-1;
martes, 20 de diciembre de 2011
ISNULL EN ORACLE - Reemplazar valores nulos
Tengo mas experiencia trabajando en MS SQL y en MYSQL que en Oracle (soy novato) por lo mismo al momento de necesitar hacer algo se me viene a la mente como es en MS SQL / MYSQL y pienso que puede haber varios en una situación similar.
En MS SQL existe la función ISNULL para reemplazar valores nulos, ejemplo:
SELECT Campo1, ISNULL(Campo2, '0') FROM Tabla
En MySQL la función es:
SELECT Campo1, COALESCE (Campo2, '0') FROM Tabla
En Oracle, la función es NVL, ejemplo:
SELECT Campo1, NVL(Campo2, '0') FROM Tabla
Lo que hacen estas funciones es reemplazar el valor nulo si existe por el que se le indica.
domingo, 18 de diciembre de 2011
Conectarse a Internet desde Fluxbox
Uso Fluxbox cuando ejecuto maquinas virtuales en Ubuntu. Básicamente por que es un escritorio ligero, que no ocupa muchas recursos. El problema es que cuando lo uso me quedo sin Internet, cosa que sin duda le ocurre a todos los que usan Fluxbox. Para ejecutar network manager se debe ejecutar el siguiente comando en una consola:
sudo nm-applet &
Sitio de Fluxbox
http://j.gs/Tya
sudo nm-applet &
Sitio de Fluxbox
http://j.gs/Tya
Suscribirse a:
Entradas (Atom)