Diferencia entre isql y osql

isql vs osql

Osql e isql son herramientas de conectividad que se utilizan para permitir que SQL Server ejecute transacciones de comandos SQL. Son de importancia, ya que funcionan de manera similar al Analizador de consultas de SQL Server. ¿Cómo se comparan estas dos herramientas de conectividad entre sí?

Osql es una utilidad de línea de comandos cuya función principal es proporcionar una interfaz para la consulta basada en ODBC al servidor SQL. El uso de osql reemplaza el uso de isql en la API de DB-Library. Esta utilidad viene con Microsoft SQL Server 2000. Las limitaciones de isql son rectificadas por osql.



Entre los usos de osql está el permitir a los usuarios ingresar de forma interactiva declaraciones Transact SQL, que imitan el símbolo del sistema. Lo que se recibe como resultado de la acción se muestra en la ventana del símbolo del sistema de osql.

Osql también permite a los usuarios enviar un trabajo realizado por osql, que tiene la capacidad de especificar si una sola instrucción Transact-SQL o si se ejecuta, señala la exactaubicacióndonde la utilidad con un archivo de texto que contiene instrucciones Transact-SQL para su ejecución. La salida de osql normalmente se dirige a un archivo de texto que se puede mostrar en una ventana de símbolo del sistema.

La ejecución de la utilidad osql se puede realizar directamente desde el sistema operativo, siendo las únicas excepciones varias opciones que distinguen entre mayúsculas y minúsculas. Al iniciarse, osql aceptará declaraciones SQL a medida que envía estas declaraciones al servidor. Los resultados se formatean y se muestran en la pantalla y QUIT o EXIT son los comandos que se utilizan para salir de la línea de comandos.

Si no se especifican los nombres de usuario al iniciar osql, SQL Server 2000 comprueba las variables de entorno y las utiliza. Un buen ejemplo de las variables del entorno utilizó el usuario y el servidor. Si las variables de entorno no están configuradas, la línea de comando da como resultado el uso del nombre de la estación de trabajo.

Isql, por otro lado, es una utilidad cuya función principal es permitir la entrada de sentencias Transact-SQL, así como archivos de script y procedimientos del sistema. Utiliza la DB-Library para comunicarse con Microsoft SQL Server 2000.

Isql funciona como un cliente de nivel de SQL Server 6.5 cuando se conecta a SQL Server 2000. Sin embargo, no admite algunas características de SQL Server 2000. La compilación de isql se basa en ODBC y no admite algunas de las características de SQL Server 2000. Isql puede ejecutar scripts que osql no puede ejecutar.

Una limitación que tiene isql es que no es compatible con Unicode, sin embargo, el analizador de consultas SQL guarda de forma predeterminada los scripts SQL en Unicode. Para evitar este problema, se prefiere el uso de OSQL. ANSI también se puede usar si se debe usar isql. Otra cosa a tener en cuenta es que isql no establece ninguna opción de conexión de forma predeterminada. Como ocurre en osql, si no se especifica un nombre, isql se convierte en las variables de entorno y la falta de variables de entorno hace que se utilice el nombre de la estación de trabajo.

Resumen

Osql e isql son herramientas de conectividad comunes que se utilizan en el entorno SQL.
Permiten que un servidor SQL ejecute transacciones de comandos SQL.
La utilidad de línea de comandos osql tiene la función principal de proporcionar una interfaz para la consulta basada en ODBC al servidor SQL.
Osql también permite a los usuarios enviar un trabajo realizado.
Isql es una utilidad cuya función principal es permitir declaraciones Transact-SQL.
OSQL es compatible con Unicode.
Isql no es compatible con Unicode. Solo puede funcionar con formato ANSI.
Tanto osql como isql vuelven al entorno operativo cuando no se especifican los nombres y, de lo contrario, se mueven para tomar el nombre de la estación de trabajo.