2/2/22

Fechas

 Tratamiento de fechas:


Crear una tabla con una columna automática de tipo timestamp:

create table if not exists DATABASE.SCHEMA.mi_tabla

(
    .
    .
    .    
    FECHA_ALTA              TIMESTAMPNTZ DEFAULT CURRENT_TIMESTAMP()
);

SELECT CURRENT_TIMESTAMP() SELECT date_trunc('DAY',CURRENT_TIMESTAMP()) SELECT CURRENT_TIMESTAMP(),dateadd('SECOND',86400,CURRENT_TIMESTAMP()) SELECT datediff('SECOND',CURRENT_TIMESTAMP(),dateadd('SECOND',86400,CURRENT_TIMESTAMP()))

Introducción a Snowflake

 Introducción a Snowflake



Creación Task


 Creación de un Task


create or replace task DATABASE.SCHEMA.mi_task 

  warehouse = mi_warehouse
  schedule = '1 MINUTE'
  when SYSTEM$STREAM_HAS_DATA('DATABASE.SCHEMA.mi_tabla_stream')
as
  call PROJECTDRIVE.WORK."pr_mi_procedure"();



Este task que estamos creando es para que salte cada minuto cuando salte el stream "mi_tabla_stream", si esto ocurre en este caso vamos a llamar a un procedimeinto "mi_procedure()".

Una vez creado lo activamos:

ALTER TASK DATABASE.SCHEMA.mi_task RESUME;

Si queremos desactivarlo para modificarlo o porque no queremos usarlo:
ALTER TASK DATABASE.SCHEMA.mi_task SUSPEND ;

Creación de un Stream

Crear un stream.

Primero creamos una tabla de ejemplo:

create table if not exists DATABASE.SCHEMA.mi_tabla

(
    CAMPO1 VARCHAR(20),
    CAMPO2 VARCHAR(20),
    CAMPO3 VARCHAR(20)    
);

create or replace stream DATABASE.SCHEMA.mi_tabla_stream on table DATABASE.SCHEMA.mi_tabla;

Ahora si insertamos, borramos o hacemos algo sobre la tabla, se quedará reflejado en el stream.


27/2/18

Eliminar registros duplicados

Una de las tareas típicas de nuestro día a día es eliminar registros duplicados de algunas tablas, no vamos a entrar en detalle de que produce estos errores, jejej, pero vamos a ir planteando algunas soluciones para borrar los registros y quedarnos con un único registro.


 Hoy vamos a presentar una solución:

DELETE
    FROM tabla a 
  WHERE ROWID > (SELECT MIN(ROWID) 
                                        FROM tabla b
                                      WHERE b.campo_id=a.campo_id);

De esta forma con ROWID tenemos una cadena alfanumérica que identifica de forma única cada fila, y estamos diciéndole que borre todos los registros con ROWID mayor que el menor, de esta forma solo nos quedamos con este registro que tiene el menor ROWID .

Vamos a ir añadiendo otras posibles soluciones próximamente.

1/2/18

Conectar SqlDeveloper con MySQL



Vamos a configurar sqldeveloper para poder acceder a una base de datos de MySQL.

Tenemos instalada una configuración básica de Mysql y una versión antigua de sqldeveloper.

Necesitamos descargarnos el driver  JDBC para MySQL "mysql-connector-java-5.1.45.tar.gz", esto lo podemos hacer de la página "https://dev.mysql.com/downloads/"


Una vez descargado lo descomprimimos, en nuestro caso lo hacemos en la siguiente ruta "C:\Program Files (x86)\sqldeveloper-4.0.3.16.84-x64\drivers", nos hemos creado dentro de la carpeta del developer una carpeta de drivers.

El siguiente paso es seleccionar dicho driver desde el developer, para poder configurar conexiones con MySql.


Por defecto no aparece nada:


Pulsamos sobre agregar entrada y seleccionamos nuestro drivers:


Seleccionamos y ya tenemos nuestro drivers cargado en sqldeveloper.


En estos momentos cuando queramos agregar una nueva conexión ya nos aparecerá una pestaña "MySQL"


En estos momentos ya podemos configurar nuestra conexión MySQL. 



Un saludo, gracias.

Instalar Eclipse y configurar Maven

Como yo no soy muy de java, pero me estoy adentrando en este mundillo y me cuesta mucho configurar eclipse, maven y todo lo que voy necesitando, voy a dejar por aquí los pasos que hay que seguir para su configuración.

  1. .      Descargamos eclipse de la página de eclipse “http://www.eclipse.org/downloads/”.
  2. .       Descargamos JDK e instalarlo. “http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html”.
  3. .       Instalar eclipse.
  4. .       Configurar Maven:

Aunque la versión que nos bajemos de eclipse puede traer incluido maven, es preferible descargarnos la última versión de maven, una vez descargada la descomprimimos en “C:\Program Files (x86)\” por ejemplo para que c quede más limpio.

Y creamos la variable de entorno que apunta a dicha ruta “MAVEN_HOME”


Añadimos a la variable de entorno de nuestra Path lo siguiente “%MAVEN_HOME%\bin”:


En eclipse tendremos que configurar Maven para que apunte a nuestra instalación, a la descarga que hemos realizado, para ello accedemos a las preferencias.



Nos posicionamos en Maven / Installations, aparece una por defecto.



Vamos a añadir nuestra instalación de Maven, pulsando en ADD se nos abrirá la siguiente ventana para seleccionar nuestra instalación:



Pulsamos finalizar y seleccionamos nuestra configuración Maven.


Así apuntara a la descarga que hemos realizado.

Además normalmente nos puede fallar por tema de proxy, si estamos dentro de la oficina o de algún cliente, por lo que tendremos que editar el setting xml de “C:\Program Files (x86)\apache-maven-3.5.2\conf” y añadir nuestro proxy, y apuntar a dicho fichero desde eclipse:



En estos momentos ya debería descargarnos las dependencias de Maven, de todos modos podemos comprobar que todo esta correcto desde linea de comandos.



Un saludo, gracias