freeTSDとコマンドラインを使用してMintLinuxVMを介してMicrosoftSQLServer 2008インスタンスに接続し、SQLステートメントを実行することができます。今、私はこれをbashスクリプトで自動化したいです。bashスクリプトに正常にログインできます。
TDSVER=8.0 tsql -H servername -p 1433 -D dbadmin -U domain\\Administrator -P password
次に、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
これは、freeTSDコマンドラインを介して手動で実行する場合は機能しますが、bashファイルを挿入する場合は機能しません。私はこの投稿をフォローしました:freeTSD&bash。
これが私の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
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>
その後、残りのスクリプトが実行されます。
誰かが私の問題に段階的に答えてくれますか?