Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - Datenbankadministration » Verwaltung Ihrer Datenbank » Dienstprogramme für die Datenbankadministration

 

Datenquellen-Dienstprogramm (dbdsn)

Erstellt, löscht und beschreibt SQL Anywhere ODBC-Datenquellen und listet sie auf

Syntax
dbdsn [ Änderungsoptionen ]
   { -l[ s | u ]
   | -d[ s | u ] DSN
   | -g[ s | u ] DSN
   | -w[ s | u ] DSN [Detailoptionen;...]
   | -cl }
Hauptoption Beschreibung
@data

Liest Optionen aus der angegebenen Umgebungsvariablen oder Konfigurationsdatei ein. Weitere Hinweise finden Sie unter Konfigurationsdateien verwenden.

Wenn Sie Kennwörter oder andere Informationen in einer Konfigurationsdatei schützen möchten, können Sie das Dienstprogramm zum Verschleiern von Dateien verwenden. Weitere Hinweise finden Sie unter Dienstprogramm zum Verschleiern von Dateien (dbfhide).

-l[ s | u ] Listet die verfügbaren SQL Anywhere ODBC-Datenquellen auf. Sie können das Listenformat ändern, indem Sie die Optionen -b oder -v verwenden. Unter Windows können Sie die Option mit den Systembezeichnern u (Benutzer) oder s (System) ändern. Standardwert ist u.
-d[ s | u ] DSN Löscht die benannte SQL Anywhere-Datenquelle. Wenn Sie die Option -y angeben, werden bestehende Datenquellen ohne Bestätigungsaufforderung gelöscht. Unter Windows können Sie die Option mit den Systembezeichnern u (Benutzer) oder s (System) ändern. Standardwert ist u.
-g[ s | u ] DSN Listet die Definition der benannten SQL Anywhere-Datenquelle auf. Sie können das Format der Ausgabe ändern, indem Sie die Optionen -b oder -v verwenden. Unter Windows können Sie die Option mit den Systembezeichnern u (Benutzer) oder s (System) ändern. Standardwert ist u.
-w[ s | u ] DSN [ Detailoptionen ] Erstellt eine neue Datenquelle oder überschreibt eine Datenquelle, wenn eine Datenquelle mit demselben Namen vorhanden ist. Wenn Sie -y angeben, werden bestehende Datenquellen ohne Bestätigungsaufforderung überschrieben. Unter Windows können Sie die Option mit den Systembezeichnern u (Benutzer) oder s (System) ändern. Standardwert ist u.
-cl

Listet die Verbindungsparameter auf, die vom dbdsn-Dienstprogramm unterstützt werden. Weitere Hinweise finden Sie unter Verbindungsparameter.

Hinweise zu unterstützten ODBC-Verbindungsparametern finden Sie unter ODBCVerbindungsparameter.

Änderungsoptionen Beschreibung
-b Formatiert die Ausgabe der Liste in eine einzeilige Verbindungszeichenfolge.
-cm

Zeigt den Befehl an, der zum Erstellen der Datenquelle verwendet wurde. Mit dieser Option kann der Erstellungsbefehl in eine Datei ausgegeben werden, die verwendet werden kann, um die Datenquelle auf einem anderen Computer zu installieren oder den ursprünglichen Zustand einer Datenquelle wiederherzustellen, wenn sie geändert wurde. Sie müssen die Optionen -g oder -l zusammen mit der Option -cm verwenden, andernfalls schlägt der Befehl fehl. Die Angabe von "-g" zeigt den Erstellungsbefehl für die angegebene Datenquelle an, während die Angabe von "-l" den Erstellungsbefehl für alle Datenquellen anzeigt.

Wenn die angegebene Datenquelle nicht existiert, wird der Befehl zum Löschen der Datenquelle generiert. Beispiel: Wenn die mydsn-Datenquelle auf dem Computer nicht existiert, würde dbdsn -cm -g mydsn den folgenden Befehl zum Löschen der mydsn-Datenquelle zurückgeben:

dbdsn -y -du "mydsn"
-dr

Nimmt den Driver-Parameter auf, wenn Datenquellen angezeigt werden. Wenn Sie die Option -cm zur Neuerstellung von Datenquellen verwenden, kann die aktuelle Version von dbdsn Datenquellen erstellen, die eine andere Version des ODCB-Treibers referenzieren.

Angenommen, Sie verwenden den folgenden Befehl, um eine Datenquelle der Version 9 zu erstellen:

dbdsn -y -wu "9.0 Student Sample" -c "UID=DBA;PWD=sql;...;Driver=
Adaptive Server Anywhere 9.0"

Wenn Sie dbdsn -cm -l ausführen, listet dbdsn den Befehl ohne den Parameter "Driver=" auf, wodurch der DSN unter Verwendung des SQL Anywhere ODBC-Treibers der Version 10.0 wieder erstellt wird.

Wenn Sie allerdings dbdsn -dr -cm -l ausführen, wird der Parameter "Driver=" aufgenommen und die Datenbank genauso wieder erstellt, wie sie ursprünglich erstellt wurde: unter Verwendung des Version 9 ODBC-Treibers.

-f Zeigt den Namen der Systemdatei, die benutzt wird. Diese Option ist nur unter Unix verfügbar.
-ns

Gibt an, dass die Einstellungen der Umgebungsvariablen benutzt werden, um den Speicherort der Systeminformationsdatei (standardmäßig .odbc.ini) zu ermitteln. Diese Option ist auch nützlich um zu bestimmen, welche Datei von dbdsn verwendet wird, wenn es in der Umgebung mehrere Kandidaten für die Systeminformationsdatei gibt. Diese Option ist nur unter Unix verfügbar.

Wenn Sie bei der Erstellung einer Datenquelle nicht die Option -ns angeben, sucht dbdsn im Stammverzeichnis und Pfad des Benutzers nach der Systeminformationsdatei.

Weitere Hinweise darüber, wie nach der Systeminformationsdatei gesucht wird, finden Sie unter ODBC-Datenquellen unter Unix verwenden.

-o Dateiname Schreibt Meldungen in die angegebene Datei aus.
-or

Erstellt bei der Angabe der Option -c eine Datenquelle für den iAnywhere Solutions Oracle-Treiber. Zum Beispiel:

dbdsn -w MyOracleDSN -or -c Userid=DBA;Password=sql;
SID=abcd;ArraySize=500;ProcResults=y

Sie können die Option -cl mit der Option -or angeben, um eine Liste der Verbindungsparameter für den iAnywhere Solutions Oracle-Treiber zu erhalten.

Weitere Hinweise finden Sie unter iAnywhere Solutions Oracle-Treiber.

-pe Verschlüsselt das Kennwort im PWD-Eintrag und ersetzt den PWD-Eintrag mit einem ENP-Eintrag, der das verschlüsselte Kennwort enthält, wenn diese Option angegeben ist und ein PWD-Eintrag im DSN enthalten ist.
-q Unterdrückt die Ausgabe in das Meldungsfenster des Datenbankservers. Wenn Sie beim Löschen oder Ändern einer Datenquelle die Option -q angeben, müssen Sie auch -y angeben.
-v Formatiert die Ausgabe der Liste über mehrere Zeilen, wie bei einer Tabelle.
-y Löscht oder überschreibt alle Datenquellen automatisch, ohne eine Bestätigung anzufordern. Wenn Sie beim Löschen oder Ändern einer Datenquelle die Option -q angeben, müssen Sie auch -y angeben.
Detailoptionen Beschreibung
-c "Schlüsselwort=Wert;..." Legt Verbindungsparameter als Verbindungszeichenfolge fest. Weitere Hinweise finden Sie unter Verbindungsparameter.
-cw Stellt sicher, dass der DBF-Parameter (Angabe mit -c) ein absoluter Dateiname ist. Wenn der Wert von DBF kein absoluter Dateiname ist, zieht das Datenquellen-Dienstprogramm das aktuelle Arbeitsverzeichnis heran (CWD). Diese Option ist sinnvoll, da einige Betriebssysteme keine CWD-Informationen in Batchdateien verfügbar halten.
Bemerkungen

Die Änderungsoptionen können vor oder nach der Angabe der Hauptoptionen definiert werden.

Das Datenquellen-Dienstprogramm ist eine plattformübergreifende Alternative zum ODBC-Administrator für das Erstellen, Löschen, Beschreiben und Auflisten von SQL Anywhere ODBC-Datenquellen. Das Dienstprogramm ist für Batch-Vorgänge nützlich.

Achtung

Das Speichern von Benutzer-IDs, Kennwörtern (verschlüsselt oder nicht-verschlüsselt) und/oder Datenbankschlüsseln in einer Datenquelle ist nicht sicher. Es wird empfohlen, dass Sie diese Informationen nicht in einer Datenquelle speichern, wenn die Datenbank sensible Daten enthält.

Unter Windows werden die Datenquellen in der Registrierung eingetragen.

Hinweise zur Erstellung einer Datenquelle mit dem ODBC-Administrator unter Windows finden Sie unter ODBC-Datenquellen erstellen.

Unter Unix-Betriebssystemen werden Datenquellen in der Systeminformationsdatei (standardmäßig .odbc.ini benannt) gespeichert. Wenn Sie unter Unix mit dem Datenquellen-Dienstprogramm SQL Anywhere ODBC-Datenquellen erstellen oder löschen, aktualisiert das Dienstprogramm automatisch den Abschnitt [ODBC Data Sources] in der Systeminformationsdatei. Wenn Sie unter Unix den Treiberverbindungsparameter mit der Option -x nicht angeben, fügt das Datenquellen-Dienstprogramm automatisch einen Treibereintrag mit dem vollen Pfad des SQL Anywhere ODBC-Treibers hinzu, basierend auf der Einstellung der SQLANY11-Umgebungsvariablen.

Weitere Hinweise zur Systeminformationsdatei finden Sie unter ODBC-Datenquellen unter Unix verwenden.

Achtung

Unter Unix dürfen Sie die Systeminformationsdatei (.odbc.ini) nicht mit dem Dienstprogramm zum Verschleiern von Dateien (dbfhide) verschleiern, außer Sie verwenden ausschließlich SQL Anywhere-Datenquellen. Wenn Sie vorhaben, andere Datenquellen (wie z.B. für die MobiLink-Synchronisation) zu verwenden, kann das Verbergen des Inhalts der Systeminformationsdatei möglicherweise dazu führen, dass andere Treiber nicht richtig funktionieren.

Beendigungscodes sind 0 (Erfolg) oder eine von 0 verschiedene Zahl (Fehlschlag). Weitere Hinweise finden Sie unter Beendigungscodes der Softwarekomponenten.

ODBCVerbindungsparameter

Das Dienstprogramm Data Source (dbdsn) unterstützt die folgenden ODBC-Verbindungsparameter. Boolsche Argumente (TRUE oder FALSE) sind entweder "YES" bzw. "1" bei "TRUE" oder "NO" bzw. "0" bei "FALSE".

Name Beschreibung
Delphi Delphi kann mehrere Lesezeichenwerte für eine Zeile nicht verarbeiten. Wenn Sie diesen Wert auf NO setzen, wird jeder Zeile ein Lesezeichenwert zugeordnet, und nicht zwei wie im Normalfall. Wenn Sie diese Option auf YES setzen, verbessern Sie damit möglicherweise die Performance von abrollenden Cursorn.
DescribeCursor

Mit diesem Parameter können Sie festlegen, wie oft der Cursor neu beschrieben werden soll, wenn eine Prozedur ausgeführt wird. Die Standardeinstellung ist "Wenn nötig".

  • Nie   Geben Sie 0, N oder NO an, wenn Sie sich sicher sind, dass Ihre Cursor nicht neu beschrieben werden müssen. Cursor neu zu beschreiben ist kostenträchtig und kann die Performance beeinträchtigen.

  • Wenn nötig   Geben Sie 1, Y oder YES an, wenn der ODBC-Treiber festlegen soll, ob ein Cursor neu beschrieben werden muss. Das Vorhandensein einer RESULT-Klausel in Ihrer Prozedur verhindert, dass ODBC-Anwendungen die Ergebnismenge neu beschreiben, nachdem ein Cursor geöffnet wird. Dies ist die Standardeinstellung.

  • Immer   Wenn Sie 2, A oder ALWAYS angeben, wird der Cursor jedesmal neu beschrieben, wenn er geöffnet wird. Wenn Sie Transact-SQL-Prozeduren oder Prozeduren verwenden, die mehrere Ergebnismengen zurückgeben, müssen Sie den Cursor jedesmal neu beschreiben, wenn er geöffnet wird.

Description Mit diesem Parameter können Sie eine Beschreibung der ODBC-Datenquelle eingeben.
Driver

Mit diesem Parameter können Sie einen ODBC-Treiber für die Verbindung angeben, und zwar folgendermaßen: Driver=Treibername. Standardmäßig ist der verwendete Treiber SQL Anywhere 11. Der Treibername muss SQL Anywhere X sein, wobei X die Hauptversionsnummer der Software ist. Wenn der Treibername nicht mit SQL Anywhere beginnt, kann er vom Datenquellen-Dienstprogramm (dbdsn) nicht gelesen werden.

Unter Unix gibt dieser Parameter den voll qualifizierten Pfad zum gemeinsam genutzten Objekt an. Wenn Sie unter Unix den Treiberverbindungsparameter nicht angeben, fügt das Datenquellen-Dienstprogramm automatisch einen Treibereintrag mit dem vollen Pfad des SQL Anywhere ODBC-Treibers basierend auf der Einstellung der SQLANY11-Umgebungsvariablen hinzu.

GetTypeInfoChar Wenn diese Option auf YES gesetzt ist, werden CHAR-Spalten als SQL_CHAR und nicht als SQL_VARCHAR zurückgegeben. Standardmäßig werden CHAR-Spalten als SQL_VARCHAR zurückgegeben.
InitString Mit InitString können Sie einen Befehl angeben, der unmittelbar nach der Verbindungsherstellung ausgeführt wird. Zum Beispiel, falls Sie eine Datenbankoption einstellen oder eine gespeicherte Prozedur ausführen möchten.
IsolationLevel

Sie können einen der folgenden Werte angeben, um die Ausgangs-Isolationsstufe für diese Datenquelle einzustellen:

  • 0   Diese Isolationsstufe wird auch die read uncommitted-Stufe (nicht festgeschriebene Anweisungen lesen) genannt. Es handelt sich dabei um die Standardisolationsstufe. Sie ermöglicht einen maximalen Parallelitätsgrad, allerdings können noch nicht festgeschriebene Daten (Dirty Reads), nicht wiederholbare Lesevorgänge und Phantomzeilen in den Ergebnismengen vorkommen.

  • 1   Diese Isolationsstufe wird auch die read committed-Stufe (festgeschriebene Anweisungen lesen) genannt. Auf dieser Stufe ist weniger Parallelität möglich als auf Stufe 0, aber einige der Inkonsistenzen in den Ergebnismengen, die auf Isolationsstufe 0 vorkommen, werden eliminiert. Nicht wiederholbare Zeilen und Phantomzeilen können vorkommen, aber Dirty Reads werden verhindert.

  • 2   Diese Isolationsstufe wird auch die repeatable read-Stufe (wiederholbare Lesevorgänge) genannt. Phantomzeilen können auftreten. Dirty Reads und nicht wiederholbare Zeilen werden verhindert.

  • 3   Diese Isolationsstufe wird auch die serializable-Stufe (serialisierbar) genannt. Auf dieser Stufe wird der geringste Parallelitätsgrad erreicht. Diese Isolationsstufe bietet die strengsten Auflagen. Dirty Reads, nicht wiederholbare Lesevorgänge und Phantomzeilen werden verhindert.

  • snapshot   Sie müssen die Snapshot-Isolation bei der Datenbank aktivieren, um diese Isolationsstufe zu verwenden. Die Snapshot-Isolationsstufen verhindern alle Interferenzen zwischen Lese- und Schreibvorgängen. Schreibvorgänge können sich weiterhin überlagern. Für die Konfliktlösung sind einige Inkonsistenzen möglich und die Performance ist gleich wie auf Isolationsstufe 0.

  • statement-snapshot   Sie müssen die Snapshot-Isolation bei der Datenbank aktivieren, um diese Isolationsstufe zu verwenden. Die Snapshot-Isolationsstufen verhindern alle Interferenzen zwischen Lese- und Schreibvorgängen. Schreibvorgänge können sich weiterhin überlagern. Für die Konfliktlösung sind einige Inkonsistenzen möglich und die Performance ist gleich wie auf Isolationsstufe 0.

  • readonly-statement-snapshot   Dies wird auch die Isolationsstufe genannt. Sie müssen die Snapshot-Isolation bei der Datenbank aktivieren, um diese Isolationsstufe zu verwenden. Die Snapshot-Isolationsstufen verhindern alle Interferenzen zwischen Lese- und Schreibvorgängen. Schreibvorgänge können sich weiterhin überlagern. Für die Konfliktlösung sind einige Inkonsistenzen möglich und die Performance ist gleich wie auf Isolationsstufe 0.

Weitere Hinweise finden Sie unter Isolationsstufen wählen.

KeysInSQLStatistics Geben Sie YES an, wenn die SQLStatistics-Funktion Fremdschlüssel zurückgeben soll. Die ODBC-Spezifikation legt fest, dass SQLStatistics keine Primär- oder Fremdschlüssel zurückgeben sollen. Einige Microsoft-Anwendungen (wie Visual Basic und Access) setzen allerdings voraus, dass Primär- und Fremdschlüssel von SQLStatistics zurückgegeben werden.
LazyAutocommit Wenn Sie diesen Parameter auf YES setzen, wird der Festschreibevorgang bis zum Ende einer Anweisung verzögert.
PrefetchOnOpen Wenn PrefetchOnOpen auf YES eingestellt ist, wird eine Prefetch-Anforderung mit der Anforderung, den Cursor zu öffnen, gesendet. Der Prefetch hindert eine Netzwerkanforderung daran, jedesmal Zeilen anzurufen, wenn ein Cursor geöffnet wird. Spalten müssen bereits gebunden sein, damit der Prefetch beim geöffneten Cursor stattfindet. Dieser Verbindungsparameter vermindert möglicherweise die Anzahl von Client/Server-Anforderungen, was die Performance über ein LAN oder WAN verbessern kann.
PreventNotCapable Der SQL Anywhere ODBC-Treiber gibt die Fehlermeldung Treiberfunktion nicht möglich zurück, weil er keine Qualifizierer unterstützt. Einige ODBC-Anwendungen verarbeiten diesen Fehler nicht einwandfrei. Setzen Sie diesen Parameter auf YES, um die Rückgabe dieser Fehlermeldung zu verhindern und diesen Anwendungen die fehlerfreie Funktion zu ermöglichen.
SuppressWarnings Setzen Sie diesen Parameter auf YES, wenn Sie Warnmeldungen unterdrücken möchten, die vom Datenbankserver bei einem Datenabruf (Fetch) zurückgegeben werden. Die Versionen 8.0.0 und später des Datenbankservers geben mehr Fetch-Warnungen ab als frühere Versionen der Software. Bei Anwendungen, die mit einer älteren Version der Software implementiert werden, können Sie mit dieser Option sicherstellen, dass korrekt mit den Fetch-Warnungen umgegangen wird.
TranslationDLL Diese Option dient der Abwärtskompatibilität. Die Verwendung von Übersetzern wird nicht empfohlen.
TranslationName Diese Option dient der Abwärtskompatibilität. Die Verwendung von Übersetzern wird nicht empfohlen.
TranslationOption Diese Option dient der Abwärtskompatibilität. Die Verwendung von Übersetzern wird nicht empfohlen.
Siehe auch
Beispiele

Eine Version der Datenquelle 'newdsn' schreiben. Keine Bestätigung anfordern, wenn die Datenquelle bereits vorhanden ist:

dbdsn -y -w newdsn -c "UID=DBA;PWD=sql;LINKS=TCPIP;ENG=myserver"

Oder, in einer anderen Reihenfolge der Optionen:

dbdsn -w newdsn -c "UID=DBA;PWD=sql;LINKS=TCPIP;ENG=myserver" -y

Alle bekannten benutzerdefinierten Datenquellen mit einem Datenquellennamen pro Ausgabezeile auflisten.:

dbdsn -l

Alle bekannten Systemdatenquellen mit einem Datenquellenamen pro Ausgabezeile auflisten:

dbdsn -ls

Alle Datenquellen mit der ihnen zugeordneten Verbindungszeichenfolge auflisten:

dbdsn -l -b

Die Verbindungszeichenfolge für die benutzerdefinierte Datenquelle MyDSN anzeigen:

dbdsn -g MyDSN

Die Verbindungszeichenfolge für die System-Datenquelle MyDSN anzeigen:

dbdsn -gs MyDSN

Die Datenquelle BadDSN löschen, aber zuerst die Verbindungsparameter für BadDSN auflisten und eine Bestätigung anfordern:

dbdsn -d BadDSN -v

Die Datenquelle BadDSN löschen, ohne zur Bestätigung aufzufordern:

dbdsn -d BadDSN -y

Eine Datenquelle namens NewDSN für den Datenbankserver MyServer erstellen:

dbdsn -w NewDSN -c "UID=DBA;PWD=sql;ENG=MyServer"

Wenn NewDSN bereits besteht, werden Sie aufgefordert, das Überschreiben der Datenquelle zu bestätigen.

Alle Verbindungsparameter-Namen und ihre Aliase auflisten:

dbdsn -cl

Listet alle Benutzerdatenquellen auf:

dbdsn -l -o dsninfo.txt

Listet alle Verbindungsparameter auf:

dbdsn -cl -o dsninfo.txt

Absoluten Dateinamen angeben. Wenn der DSN erstellt wird, enthält er DBF=c:\SQLAnywhere11\my.db.

c:\SQLAnywhere11> dbdsn -w testdsn -cw -c UID=DBA;PWD=sql;ENG=SQLAny;DBF=my.db

Den Befehl generieren, um die SQL Anywhere 11 Demo-Datenquelle zu erstellen und sie in eine Datei namens restoredsn.bat auszugeben:

dbdsn -cm -gs "SQL Anywhere 11 Demo" > restoredsn.bat

Die restoredsn.bat-Datei enthält z. B. Folgendes:

dbdsn -y -ws "SQL Anywhere 11 Demo" -c "UID=DBA;PWD=sql;
DBF='C:\Dokumente und Einstellungen\Alle Benutzer\Dokumente\SQL Anywhere 11\Samples\demo.db';
ENG=demo11;START='C:\Programme\SQL Anywhere 11\bin32\dbeng11.exe';
ASTOP=yes;Description='SQL Anywhere 11 Sample Database'"

Den Standort der Systeminformationsdatei unter Unix anzeigen:

dbdsn -f

Der Befehl gibt diese Ausgabe zurück:

dbdsn using /home/user/.odbc.ini

Den Standort der Systeminformationsdatei ändern:

export ODBCINI=./myodbc.ini

Den neuen Standort der Systeminformationsdatei mithilfe von dbdsn -f überprüfen:

dbdsn using ./myodbc.ini

Die Option -ns bei der Erstellung der Datenquelle verwenden:

dbdsn -w NewDSN -c "UID=DBA" -ns

Dies ergibt die folgende Ausgabe:

Konfiguration "newdsn" in die Datei ./myodbc.ini geschrieben