Mogę połączyć się z wystąpieniem Microsoft SQL Server 2008 za pośrednictwem maszyny wirtualnej Mint Linux przy użyciu freeTSD i linii poleceń, aby wykonać na nim instrukcje sql. Teraz chcę zautomatyzować to w skrypcie basha. Jestem w stanie pomyślnie zalogować się w moim skrypcie bash:bash freeTDS: Wykonywanie kwerend sql w serwerze Microsoft SQL
TDSVER=8.0 tsql -H servername -p 1433 -D dbadmin -U domain\\Administrator -P password
I wtedy moje zapytanie SQL:
USE dbname GO delete from schema.tableA where ID > 5 GO delete from schema.tableB where ID > 5 GO delete from schema.tableC where ID > 5 GO exit
To działa, gdy robi ręcznie poprzez linię poleceń freeTSD, ale nie wtedy, kiedy mogę umieścić w pliku bash . Śledziłem ten wpis: freeTSD & bash.
Oto mój przykładowy skrypt bash:
echo "USE dbname GO delete from schema.tableA where userid > 5 go delete from schema.tableB where userid > 5 go delete from schema.tableC where ID > 5 GO exit" > tempfile | TDSVER=8.0 tsql -H servername -p 1433 -D dbname -U domain\\Administrator -P password < tempfile
wyjście skryptu bash:
locale is "en_US.UTF-8"
locale charset is "UTF-8"
Default database being set to sbdb
1> 2> 3> 4> 5> 6> 7> 8>
a następnie reszta mojego skryptu jest wykonywany.
Czy ktoś może dać mi krok po kroku odpowiedź na mój problem?
ustalone pewne problemy hiperłączy :) –