Mostrando las entradas con la etiqueta base de datos. Mostrar todas las entradas
Mostrando las entradas con la etiqueta base de datos. Mostrar todas las entradas

miércoles, 8 de diciembre de 2021

Trabajando con PostgreSQL en la nube, borrado de registros (DELETE) desde Python

Hola a todos, en esta nueva publicación vamos a seguir trabajando con PostgreSQL en la nube y vamos a ejecutar el borrado de registros desde la plataforma Colab, mediante un script escrito en Python.

Vamos a recordar cuales son los registros que tenemos en nuestra tabla contacts, para lo que vamos a ejecutar la instrucción SELECT como lo hicimos en el primer post. Solo que esta ves el código SQL lo vamos a correr directamente en el servidor de PostgreSQL:


Como podemos ver en la imagen, nuestra tabla consta de 6 registros. Para este ejercicio, vamos a proceder a borrar el registro con id = 6.

Veamos el script en Python para ejecutar la tarea:


domingo, 5 de diciembre de 2021

Trabajando con PostgreSQL en la nube, actualización de registros (UPDATE) desde Python

Hola a todos, hoy vamos a continuar con la serie de publicaciones asociadas a trabajar con  PostgreSQL en la nube. Ya vimos como crear una tabla, insertar registros y consultarlos.
Ahora, vamos a ver como podemos actualizar los registros que ya están almacenados en las tablas de nuestra base de datos.

El ejercicio lo vamos a desarrollar en la misma base y tabla con las que trabajamos en el post anterior.

La tarea que queremos realizar es buscar en nuestra tabla contacts el registro con id = 5 y actualizar el nombre a: Juliana Dominguez.


Actualmente, el registro con id = 5 tiene en el campo name John Doe.

Veamos como sería el código, para cumplir con el objetivo de actualizar el registro:


sábado, 4 de diciembre de 2021

Trabajando con PostgreSQL en la nube, creación de una tabla (CREATE TABLE), inserción de registros (INSERT INTO) y consulta de datos (SELECT) desde Python

Buenos días, hoy vamos a trabajar nuevamente con la base de datos PostgreSQL, solo que en esta oportunidad, no vamos a instalar el servidor en nuestro equipo, sino que vamos a operar con el servicio de PostgreSQL en la nube.

Existen en internet distintas plataformas que ofrecen el servicio y que nos dan desde cuentas gratuitas de prueba, hasta cuentas con servicios dedicados para la construcción e implementación de aplicaciones críticas.

En mi caso, voy a crear una cuenta en la página www.elephantsql.com utilizando mi cuenta de Google:



Y vamos a dar clic en el botón de login:


jueves, 17 de septiembre de 2020

Conectarse a una base de datos Postgresql utilizando Python

Hola a todos, hoy estoy de regreso, luego de unos meses de ausencia. Hace algún tiempo venía con dudas sobre empezar a aprender Python. Luego de muchos intentos fallidos, por fin me decidí y arranqué a estudiar el lenguaje. La verdad es que me ha dejado sorprendido, por la facilidad con que se escribe el código, la amplia librería de paquetes que crece todos los días, con las que se puede acceder fácilmente una base de datos, crear archivos de excel, trabajar modelos de machine learning, crear gráficos etc.

Hoy, he querido crear este post, para demostrar como con unas simples líneas de código, podemos acceder a una base de datos creada en Postgresql, en una instancia instalada en mi computador personal. Aquí la podemos ver usando PgAdmin4:


El nombre de la base de datos es aprendizaje, y la tabla que vamos a consultar es: customer:

domingo, 26 de agosto de 2018

TSQL - Agrupar Datos en Nuestras Consultas - GROUP BY (SELECT) - Data Mining

Hola, hoy vamos a revisar el uso de la clausula GROUP BY que utilizamos en nuestras consultas en TSQL para agrupar y resumir los datos de las mismas.

En este primer ejemplo la vamos a utilizar sola sin hacer uso de las funciones para agregar datos, tales como: SUM(), MAX(), MIN() etc.

Vamos entonces a iniciar con la siguiente consulta, muy sencilla ademas:


Y la vamos a reducir para extraer solamente la ciudad y el país, dejando primero el país:


sábado, 18 de agosto de 2018

TSQL - Trabajar con Variables en Nuestro Código - Data Mining

Hola, hoy vamos a aprender a incorporar variables en nuestro código de TSQL. Así es, al igual que cuando lo hacemos en otros lenguajes tales como: VBA, Java y Java Script, en TSQL también podemos declarar variables, asignarles valores y utilizarlas durante la ejecución de nuestros programas.

Vamos a empezar, creando un sencillo SELECT como sigue:


Y vamos a insertar al inicio una fila para definir nuestra variable:

  

TSQL - Utilizar Comodines con el Operador LIKE (SELECT) - Data Mining

Hola, hoy vamos a revisar el uso del operador LIKE y del comodín % en la construcción de filtros en nuestras consultas.

El comodín % representa una cadena de cero o más caracteres. Esto quiere decir, que si en un filtro del campo país pasamos al operador LIKE el argumento 'Co%', tendremos como resultado en el filtro, los registros cuyo país inicie con 'Co' y a continuación tenga cualquier cadena de texto, ejemplo: Colombia, Costa Rica, etc.

Veamos una aplicación en una consulta como sigue, en la que tenemos la información básica de los empleados de la compañía:


A esta información base, requerimos aplicarle un filtro que nos permita extraer los registros cuyo cargo (title) inicie por la palabra Sales, sin importar lo que siga a continuación:


sábado, 11 de agosto de 2018

TSQL - Aplicar un Filtro Utilizando el Operador IN (SELECT) - Data Mining

Hola, hoy vamos a trabajar con un operador muy útil al momento de aplicar filtros, el operador IN.

Si realizamos una consulta a todos los registros de nuestra tabla clientes tenemos lo siguiente:



Ahora supongamos que queremos aplicar un filtro que nos devuelva los clientes cuyo país de origen sea Germany o Mexico o France. Una primera posibilidad es que modifiquemos la consulta de la siguiente forma:



TSQL - Aplicar un Filtro Para Encontrar Registros Nulos - NULL (SELECT) - Data Mining

Hola, en el mundo de las bases de datos existe un valor particular que es conocido como valor nulo o NULL en ingles. El valor NULL equivale a un valor no asignado, que es muy distinto a cero, o a aplicar un filtro utilizando como parámetro las comillas simples seguidas sin ningún espacio (''). 

En algunos ambientes de trabajo de consulta de bases de datos, los campos que tienen este valor aparecen simplemente en blanco. Afortunadamente en el SQL Server Management Studio, estos aparecen identificados con el valor NULL.

Vamos a realizar un filtro en la tabla clientes y vamos a buscar los registros que tengan el valor nulo:



jueves, 9 de agosto de 2018

TSQL - Negar La Expresión de la Clausula Where (SELECT) - Data Mining

Hola, hoy vamos a revisar cómo negar una expresión lógica contenida en una clausula WHERE. 

Vamos a iniciar tomando como base la consulta que vimos en el post anterior donde aplicamos un filtro a un campo tipo fecha utilizando el operador BETWEEN:



Al negar la clausula lo que obtenemos es el resultado opuesto a lo que tenemos en la misma. En este caso, lo que vamos a obtener es todos los registros que en el campo OrderDATE tengan un valor de fecha que no este entre el primero de Enero y el 31 de Enero del año 1998. Para hacer esto, solo agregamos el operador NOT:



martes, 7 de agosto de 2018

TSQL - Aplicando un Filtro por Rango de Fechas, a los Resultados de la Consulta (SELECT) - Data Mining

Hola, hoy vamos a hacer una pausa en los temas financieros y vamos a retomar el trabajo con bases de datos utilizando TSQL. Continuaremos con la aplicación de filtros a nuestro set de datos. Pero en esta oportunidad, ejecutaremos un filtro a los campos que contienen fechas.

Este tipo de filtro es muy común, cuando nos encontramos realizando tareas de minería de datos.

Comencemos entonces por escribir el código inicial con el que vamos a trabajar:



El campo OrderDate es en el que vamos a aplicar nuestro filtro. Primero, vamos a traer solo los registros que corresponden a una fecha particular:


lunes, 18 de septiembre de 2017

TSQL - Creando un Campo Calculado en Nuestra Consulta (SELECT) - Data Mining

Hola, hoy vamos a construir campos calculados en nuestra consulta. Pongámonos en marcha abriendo nuestro SQL Server Management Studio y recordando la consulta con la que venimos trabajando en los últimos posts:


Vamos a incluir un nuevo campo que contiene las unidades facturadas y le vamos a agregar un alias para facilitar la lectura:



miércoles, 13 de septiembre de 2017

TSQL - Aplicando un Filtro a los Resultados de la Consulta (SELECT) - Data Mining

Hola, hoy vamos a aplicar un filtro a nuestra consulta en TSQL. Con esto empezamos a dar nuestros primeros pasos hacia consultas más interesantes y un poco más avanzadas. 

Como lo hemos venido haciendo, vamos a continuar con la misma consulta que hemos venido trabajando, para esto abrimos nuestro SQL Server Management Studio:


Después de la clausula FROM, escribiremos nuestro filtro, para lo que utilizaremos la clausula WHERE el campo y el filtro. En nuestro ejemplo, aplicaremos un filtro, indicando que solo queremos los registros para los que el valor del campo PAI_NOMBRE sea igual a Ecuador:


martes, 12 de septiembre de 2017

TSQL - Cambiar el Nombre de las Columnas en Nuestra Consulta - Usar un Alias (SELECT) - Data Mining

Hola a todos, continuando con nuestros posts sobre TSQL, hoy vamos a ver como cambiar los nombres de las consultas que diseñemos. Es algo muy sencillo, pero bastante útil, ya que por lo general, los nombres de los campos, por algún motivo, suelen ser bastante técnicos, algo que asusta un poco a los usuarios comunes y que en últimas dificulta la lectura del set de datos.

En nuestra aplicación, SQL Server Management Studio, vamos a trabajar utilizando el mismo query o consulta de la última vez:


Para cambiar el nombre, vamos a utilizar la palabra reservada del lenguaje AS y después de esta escribimos el nombre que queremos utilizar:


lunes, 11 de septiembre de 2017

TSQL - Seleccionar solamente los campos de nuestro interés (SELECT) - Data Mining

Hola, vamos a continuar con el desarrollo de nuestras consultas de selección en TSQL. Ayer vimos como seleccionar todo el contenido de una tabla. Hoy vamos a indicarle al motor de nuestra base de datos, que nos devuelva específicamente los campos en los que tenemos interés. Recuerden que nuestra tabla de facturación luce de la siguiente forma:




Y que al desplazarnos a la derecha, encontramos los demás campos que conforman nuestra tabla:



domingo, 10 de septiembre de 2017

TSQL - Realizando Nuestra Primer Consulta de Selección (SELECT) - Data Mining

Hola a todos, hoy vamos a iniciar con una serie de publicaciones relacionadas con el uso del lenguaje SQL (Structured Query Language) y más específicamente con la versión de Microsoft TSQL (Transact SQL) que es el lenguaje oficial para trabajar con el Motor de Base de Datos SQL Server.

Primero vamos a trabajar en la construcción de consultas de datos, usando la sentencia: SELECT, para dar paso más adelante a la construcción de consultas de actualización, eliminación e inserción de datos.

En esta primer entrega, iniciaremos con la exploración del SQL Server Management Studio y vamos a construir una consulta básica de selección.

Cuando abrimos el SQL Server Managemant Studio y nos conectamos a un servidor (Mi recomendación es que en este punto consulten con su equipo local de TI, para que les guíen sobre la forma de conectarse al servidor y el trámite que deberán realizar para obtener los permisos necesarios para poder trabajar con las bases de datos) obtenemos una vista como la que sigue:


En el cuadro de la izquierda (object explorer), tenemos las bases de datos que estan disponibles en el servidor al que estamos conectados. Si damos clic en el signo mas, se van a desplegar los diferentes objetos que contiene la base:


lunes, 24 de abril de 2017

Construir una consulta desde excel a una tabla de una base de datos sin usar vba

Bueno, con anterioridad construimos una macro que nos permitía conectar con una base de datos, ejecutar un código en vba, realizar la conexión y ejecutar un comando qu se encargaba de borrar el contenido de la tabla (ver post: Ejecutar la instrucción DELETE de SQL desde Excel usando VBA. Luego lo mejoramos y realizamos la misma tarea pero utilizando en nuestro código de vba solo el objeto ADODB.Connection (ver post: Post Mejorado: Ejecutar la instrucción DELETE de SQL desde excel usando solo el objeto ADODB.connection de vba). Adicionalmente, en este último adicionamos las líneas de código para asegurar el cierre de la conexión y la referencia al objeto.

Hoy vamos a hacer nuevamente una conexión a nuestra base de datos de acces pero utilizando la funcionalidad que incorpora excel para hacerlo sin necesidad de usar código en vba. Nuestro objetivo sera realizar una consulta con la que podamos consultar el contenido de una tabla. Puesto en términos de SQL, vamos a realizar un SELECT.

Para poder hacerlo, vamos a iniciar con excel y vamos a ir al menú: Datos y seleccionamos la opción access:


En este caso, seleccionamos access, porque es la base con la que vamos a realizar el ejemplo. Ya saben que si lo quieren hacer con Oracle o SQL Server, deben trabajar con Otras Fuentes.

En el cuadro de diálogo que se despliega, vamos a ubicar nuestro archivo de access y damos clic en aceptar:


miércoles, 12 de abril de 2017

Ejecutar la utilidad compactar y reparar de Microsoft Access

Nuestros archivos de bases de datos de Microsoft Access suelen ir creciendo con el tiempo. En la medida en que realizamos transacciones con los mismos e insertamos nuevos registros, nuestra base de datos se incrementa en algunos o en muchos bytes.

Muy pocas personas suelen realizar una tarea de mantenimiento que al menos deberíamos ejecutar una o dos veces en el mes, dependiendo del volumen de transacciones que realicemos en nuestra base. Esta tarea de mantenimiento realiza una reparación de nuestro archivo de access y ejecuta un proceso mediante el cual se compacta la base de datos, disminuyendo el tamaño de la misma y  mejorando el performance del archivo.

Vamos hoy entonces a ejecutar este sencillo comando, que nos va a ayudar a mantener unas bases de datos sanas y de menor tamaño. Este proceso se lo vamos a aplicar a una base de datos que tengo en mi disco duro, y que se llama: Gastos Gestionables SAL.accdb que pueden ver a continuación:


Como pueden ver, en este momento el tamaño del archivo es de 5.160 KB. Vamos entonces a abrir el archivo y en el menú: HERRAMIENTAS DE BASES DE DATOS buscamos la opción:Compactar y reparar base de datos y damos clic en ella:

domingo, 2 de abril de 2017

Ejecutar la instrucción UPDATE de SQL desde Excel usando VBA

En este segundo post, vamos a ejecutar la instrucción UPDATE que básicamente es para actualizar registros en una base de datos. Sencilla pero poderosa y de mucho cuidado, pues después de ejecutada no la podremos deshacer. Nuevamente, vamos a construir una macro que va a combinar vba y sql.

Vamos a iniciar abriendo un archivo de excel, y vamos a dar la combinación de teclas Alt + F11 para abrir el editor de visual basic. Nos  deberá aparecer la siguiente ventana:


Seleccionamos la opción para insertar un módulo:


viernes, 31 de marzo de 2017

Ejecutar la instrucción DELETE de SQL desde Excel usando VBA

Vamos a iniciar una serie de posts en los que vamos a utilizar las instrucciones básicas de SQL para borrar, actualizar e insertar datos desde excel en una tabla de una base de datos. Para nuestros ejemplos, vamos a utilizar una base de datos construida en Ms Access, pero podemos reutilizar el código para hacer las operaciones con una base de datos de Oracle, SQL Server, My SQL y otras más.

Este primer post, es sobre el uso de la instrucción DELETE. Sencilla pero poderosa y de mucho cuidado, pues después de ejecutada no la podremos deshacer. En este ejemplo, vamos a construir una macro que va a combinar vba y sql. En mi opinión una combinación poderosa que nos va a servir para solucionar muchas de las necesidades que tengamos en nuestro trabajo.

Vamos a iniciar abriendo un archivo de excel, y vamos a dar la combinación de teclas Alt + F11 para abrir el editor de visual basic. Nos  deberá aparecer la siguiente ventana:



Seleccionamos la opción para insertar un módulo: