Разлика между isql и osql

isql срещу osql

Osql и isql са и двата инструмента за свързване, използвани, за да позволят на SQL Server да изпълнява транзакционни SQL команди. Те са от значение, тъй като функционират подобно на SQL Server Query Analyzer. Как се сравняват тези два инструмента за свързване?

Osql е помощна програма за команден ред, чиято основна функция е да осигури интерфейс за базирана на ODBC заявка към SQL сървъра. Използването на osql замества използването на isql в API на DB-Library. Тази помощна програма идва с Microsoft SQL Server 2000. Ограниченията на isql са коригирани от osql.



Сред употребите на osql позволяват на потребителите да въвеждат интерактивно SQL оператори Transact, което имитира командния ред. Какво се получава в резултат на действието се показва в прозореца на командния ред на osql.

Osql също така позволява на потребителите да изпращат работа, изпълнявана от osql, която има способността или да посочва дали единичен оператор Transact-SQL или ако се изпълнява, той посочва точноместоположениекъдето помощната програма с текстов файл, съдържащ Transact-SQL изрази за изпълнение. Изходът на osql обикновено се насочва към текстов файл, който може да се покаже в прозореца на командния ред.

Изпълнението на помощната програма osql може да се направи директно от операционната система, като изключенията са само няколко варианта, чувствителни към малки и малки букви. При стартиране osql ще приеме SQL изрази, докато ги изпраща на сървъра. Резултатите се форматират и показват на екрана и QUIT или EXIT са командите, използвани за излизане от командния ред.

Неуспех при посочване на потребителски имена при стартиране на osql е, че SQL Server 2000 проверява променливите на средата и ги използва. Добър пример за променливите на околната среда, използвани от потребителя и сървъра. Ако променливите на средата не са зададени, командният ред води до използването на името на работната станция.

Isql, от друга страна, е помощна програма, чиято основна функция е да позволява въвеждането на оператори Transact-SQL, както и скрипт файлове и системни процедури. Той използва DB – Library за комуникация с Microsoft SQL Server 2000.

Isql работи като клиент на ниво SQL Server 6.5, когато е свързан със SQL Server 2000. Той обаче не поддържа някои функции на SQL Server 2000. Компилацията на isql се основава на ODBC и не поддържа някои от функциите на SQL Server 2000. Isql може да изпълнява скриптове, които osql не може да изпълнява.

Ограничение, което има isql, е, че не поддържа Unicode, но анализаторът на SQL Query по подразбиране записва SQL скриптове в Unicode. За да се заобиколи този проблем, OSQL е предпочитан за използване. ANSI може да се използва и ако трябва да се използва isql. Друго нещо, което трябва да се отбележи, е, че isql не задава никакви опции за връзка по подразбиране. Както се случва в osql, неуспехът да се посочи име отвежда isql към променливите на околната среда и липсата на променливи на средата води до използваното име на работната станция.

Обобщение

Osql и isql са често срещани инструменти за свързване, използвани в SQL средата.
Те позволяват на SQL Server да изпълнява транзакционни SQL команди.
Помощната програма на командния ред osql има основната функция да предоставя интерфейс за базирана на ODBC заявка към SQL сървъра.
Osql също така позволява на потребителите да изпращат изпълнена работа.
Isql е помощна програма, чиято основна функция е да позволява Transact-SQL изрази.
OSQL поддържа Unicode.
Isql не поддържа Unicode. Може да работи само с формат ANSI.
Както osql, така и isql се връщат към операционната среда, когато имената не са посочени и ако не, те се преместват, за да вземат името на работната станция.