2016-07-27 42 views
0

Ich möchte eine Windows-Stapeldatei erstellen, um die Abfrage auf Sybase-Datenbank unter Linux auszuführen.Isql-Befehlsfehler beim Ausführen der Abfrage in der Sybase-Datenbank

Batch-Datei:

plink.exe -ssh [email protected]<IP> -pw <PW> -m C:\scripts\script1.bat -t > C:\scripts\testing.log 

script1.bat:

echo --- query 1 ----- 
cd /sybase/OCS-15_0/bin/ 
isql -Uimaldb_bkp -Pstart_bkp -SLinux1 -Dimaldb 
sp_helpsegment 
go 
exit 

Es bis isql Befehl funktioniert gut und gibt Ausgang in testing.log:

--- Abfrage 1 - --- bash: isql: Befehl nicht gefunden bash: sp_helpsegment: Befehl nicht gefunden bash: go: Befehl nicht gefunden

Bitte um Rat.

Antwort

1

'isql' wird funktionieren, sobald die erforderlichen Umgebungsvariablen für Sybase ASE auf dem Datenbankserver (Linux-Server wie von Ihnen angegeben) gesetzt sind. Überprüfen Sie bitte den unten stehenden Link für weitere Informationen:

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc35823.1570/html/uconfig/X30690.htm

Auf einer einfacheren Notiz, sollte es eine Datei sein innen ‚/ sybase‘ ‚SYBASE.sh‘ genannt (ich denke, Sybase in diesem Verzeichnis installiert wurde, von Ihr Beispielcode). Sie benötigen diese Datei, indem Sie die Datei '.bashrc' bearbeiten, die sich im Ausgangsverzeichnis des Benutzers befindet, mit dem Sie eine Verbindung zum Linux-Server herstellen.

Damit das SQL funktioniert, benötigen Sie ein Flag, um den Anfang und das Ende des SQL-Blocks im Skript anzugeben. Bitte versuchen Sie folgend:

isql -Uimaldb_bkp -Pstart_bkp -SLinux1 -Dimaldb <<EOF 
sp_helpsegment 
go 
EOF 

Sie anderes Wort

+0

hallo sumitkd statt ‚EOF‘ verwenden - vielen Dank für Ihre Antwort .. in meinem Skript i Befehl gebe, aus dem Verzeichnis zu arbeiten, wo isql existieren. (cd/sybase/OCS-15_0/bin /) .. ist es sogar erforderlich, die Umgebungsvariablen –

+0

zu setzen Ja. Es ist notwendig. Ich bin mir nicht sicher, wie das funktioniert, aber meiner Erfahrung nach braucht 'isql' auch einige dieser Umgebungsvariablen, um richtig zu funktionieren. – sumitkd

+0

hi sumitkd - danke für deine Antwort - nach dem Geben von Umgebungsvariablen im Batch-Skript, jetzt gibt es keinen Fehler .. aber kann noch nicht die Abfrage ausführen ..... meine Ausgabe ist als ...... --- Abfrage ----- - Umgebungsvariable erledigt --- 1> –