Unterschied zwischen isql und osql

isql vs osql

Osql und isql sind beides Verbindungstools, mit denen SQL Server Transact-SQL-Befehle ausführen kann. Sie sind von Bedeutung, da sie ähnlich wie der SQL Server Query Analyzer funktionieren. Wie vergleichen sich diese beiden Konnektivitätswerkzeuge??

Osql ist ein Befehlszeilendienstprogramm, dessen Hauptfunktion darin besteht, eine Schnittstelle für die ODBC-basierte Abfrage an den SQL-Server bereitzustellen. Die Verwendung von osql ersetzt die Verwendung von isql in der DB-Library-API. Dieses Dienstprogramm ist im Lieferumfang von Microsoft SQL Server 2000 enthalten. Die Einschränkungen von isql werden durch osql behoben.

Zu den Anwendungsgebieten von osql gehört, dass Benutzer interaktiv Transact-SQL-Anweisungen eingeben können, die die Eingabeaufforderung imitieren. Was als Ergebnis der Aktion empfangen wird, wird im Eingabeaufforderungsfenster von osql angezeigt.

Mit Osql können Benutzer auch einen von osql ausgeführten Auftrag übermitteln, der entweder angeben kann, ob eine einzelne Transact-SQL-Anweisung vorhanden ist oder ob sie ausgeführt wird, und zeigt an, wo das Dienstprogramm eine Textdatei mit Transact-SQL-Anweisungen enthält Ausführung. Die Ausgabe von osql wird normalerweise an eine Textdatei gerichtet, die in einem Eingabeaufforderungsfenster angezeigt werden kann.

Die Ausführung des Dienstprogramms osql kann direkt vom Betriebssystem aus durchgeführt werden, wobei einige Optionen die Groß- und Kleinschreibung berücksichtigen. Beim Starten akzeptiert osql SQL-Anweisungen, da es diese Anweisungen an den Server sendet. Die Ergebnisse werden formatiert und auf dem Bildschirm angezeigt. QUIT oder EXIT sind die zum Beenden der Befehlszeile verwendeten Befehle.

Wenn Sie beim Starten von osql keine Benutzernamen angeben, wird der SQL Server 2000 die Umgebungsvariablen überprüft und verwendet. Ein gutes Beispiel für die Umgebungsvariablen, die Benutzer und Server verwenden. Wenn die Umgebungsvariablen nicht festgelegt sind, verwendet die Befehlszeile den Namen der Arbeitsstation.

Isql hingegen ist ein Dienstprogramm, dessen Hauptfunktion darin besteht, die Eingabe von Transact-SQL-Anweisungen sowie Skriptdateien und Systemprozeduren zu ermöglichen. Es verwendet die DB-Library für die Kommunikation mit dem Microsoft SQL Server 2000.

Isql arbeitet als Client auf SQL Server 6.5-Ebene, wenn eine Verbindung zu SQL Server 2000 besteht. Einige SQL Server 2000-Funktionen werden jedoch nicht unterstützt. Der Build von isql basiert auf ODBC und unterstützt einige der SQL Server 2000-Features nicht. Isql kann Skripts ausführen, die von osql nicht ausgeführt werden können.

Eine Einschränkung von isql ist, dass es Unicode nicht unterstützt. Der SQL Query Analyzer speichert jedoch standardmäßig SQL-Skripts in Unicode. Um dieses Problem zu umgehen, wird OSQL bevorzugt verwendet. ANSI kann auch verwendet werden, wenn isql verwendet werden soll. Zu beachten ist auch, dass isql standardmäßig keine Verbindungsoptionen setzt. Wenn in osql ein Name nicht angegeben wird, ist isql für die Umgebungsvariablen erforderlich, und das Fehlen von Umgebungsvariablen führt dazu, dass der Name der Arbeitsstation verwendet wird.

Zusammenfassung

Osql und isql sind gängige Verbindungstools, die in der SQL-Umgebung verwendet werden.
Sie ermöglichen einem SQL Server, Transact-SQL-Befehle auszuführen.
Das Befehlszeilendienstprogramm osql bietet eine Hauptfunktion zum Bereitstellen einer Schnittstelle für die ODBC-basierte Abfrage an den SQL-Server.
Osql ermöglicht es Benutzern auch, einen ausgeführten Auftrag zu senden.
Isql ist ein Dienstprogramm, dessen Hauptfunktion darin besteht, Transact-SQL-Anweisungen zuzulassen.
OSQL unterstützt Unicode.
Isql unterstützt kein Unicode. Es kann nur mit dem ANSI-Format arbeiten.
Sowohl osql als auch isql kehren in die Betriebsumgebung zurück, wenn keine Namen angegeben werden. Wenn dies nicht der Fall ist, wird der Name der Workstation übernommen.