Cómo escribir scripts de Unix para consultas y procesos SQL

Escrito por leena kudalkar | Traducido por daniel gómez villegas
  • Comparte
  • Twittea
  • Comparte
  • Pin
  • E-mail
Cómo escribir scripts de Unix para consultas y procesos SQL
Llama a las utilerías SQL de la terminal de comandos con un script de shell. (Jupiterimages/Comstock/Getty Images)

La capa más externa del sistema operativo Unix, llamada "shell" o caparazón, es la interfaz entre el usuario y el sistema operativo. Unix ofrece varios formatos de programación de shell que siguen un patrón básico común. El C Shell, Korn Shell y Bourne Shell son lenguajes de script populares. Un usuario en la terminal escribe comandos Unix, que se indican con un signo "$" de forma predeterminada. Un script de shell es un programa que es interpretado por el shell. Es tratado como cualquier comando shell de Unix en el sistema así:

$ run_sql_script.sh > sql_report.prn

Nivel de dificultad:
Moderadamente fácil

Otras personas están leyendo

Necesitarás

  • Computadora o estación de trabajo
  • Licencia instalada del sistema operativo Unix
  • Cuenta de usuario de Unix
  • Licencia instalada del sistema de administración de base de datos relacional
  • Cuenta de usuario de base de datos

Lista completaMinimizar

Instrucciones

    Diseño del script de shell

  1. 1

    Inicia sesión en el sistema Unix con tu cuenta de usuario. Si eres el administrador del sistema, inicia sesión como usuario "root". El signo para el usuario "root" es "#", mientras que para otros usuarios es "$", de manera predeterminada.

  2. 2

    En la terminal del sistema, escribe "vi" para iniciar el editor "vi" de esta manera: $vi OR $ vi run_sql_script.sh para especificar el nombre del archivo que es creado, editado y guardado.

  3. 3

    Declara la ruta a la shell que usaste y describe el script en una línea de comentario con "#" así:

    run_sql_script.sh : Un script de shell para ejecutar el reporte SQL y enviarlo a la impresora.

    Usage: run_sql_script.sh <db_username> <db_password>

    # !/bin/sh

  4. 4

    Declara las variables necesarias del shell, valida el nombre de usuario y la contraseña proporcionada por el usuario y ejecuta la utilería de SQL para tu sistema de base de datos relacional. Observa el siguiente script de shell:

    run_sql_script.sh : Un script de shell para ejecutar el reporte de SQL y enviarlo

    a la impresora.

    Usage: run_sql_script.sh <db_username> <db_password>

    # !/bin/sh

    Inicializa las variables de shell. De manera sencilla por el momento.

    Pueden ser después obtenidas desde el usuario en el formulario desde los

    argumentos de la línea de comandos.

    HOSTNAME = "MyUnixWorkstation" SERVER = "CorporateSybServer" SQLSCRIPT = "ExtractOrderRpt.sql" SQLOUTPUT = "OrderRpt" + $date() + ".prn" PRINTER = "CentralOfficePrinter01" DB_USERNAME = $1 DB_PASSWORD = $2

    validar los argumentos de la línea de comandos

    if [ -z "${DB_USERNAME}" || -z "${DB_PASSWORD}" ] then echo "Usage: run_sql_script.sh <db_username> <db_password>" exit 2 fi

    Corre la utilería de comandos SQL para tu RDBMS y redirige la salida a un

    archivo.

    isql -H $HOSTNAME -S $SERVER -U $DB_USERNAME -P $DB_PASSWORD $DB_PATH $SQLSCRIPT -o $SQLOUTPUT

    Ahora imprime el archivo en la impresora apropiada.

    lpr $SQLOUTPUT -P $PRINTER

    echo "Tu reporte ha sido impreso." exit 0

    A través de SQL

  1. 1

    Envia la salida del script de SQL directamente a la impresora utilizando la palabra clave "spool" de SQL*Plus, si estás utilizando Oracle.

    spool SQLOut.LS create select name, address, telephone, quantity from customer c, order o where c.customer_id == o.customer_id spool out

    Esta secuencia de comandos SQL*Plus envía la salida del servidor de base de datos para el archivo "SQLOut.LS" y luego lo imprime en la impresora predeterminada.

  2. 2

    Acepta más variables del usuario en forma de argumentos de línea de comandos para hacer tu script de SQL y shell de Unix más sofisticados y robustos. De esta manera el script funcionará en cualquier computadora y servidor de base de datos, su salida se enviará a una pantalla o cualquier archivo con una ruta específica o a una impresora especificada.

  3. 3

    Encuentra la opción del comando para desactivar la visualización de las cabeceras en la salida de SQL para la utilidad SQL que vas a utilizar. Por ejemplo, SQL *Plus de Oracle ofrece la opción "-b", y Sybase "isql" utiliza varios opciones para el formato de salida.

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles