batで取得したい値を入力してデータ取得できるようにしてみた

はじめまして。ちいのすけです!
満を持して初投稿です。(この期に及んでw)

最近、batに触れる機会が多いため、
ぶち当たった壁を備忘録として書き起こしておこうと思います。

さて、、、
本日、わたしがぶち当たった壁はこちら。

取得したい値をコマンドプロンプトの画面で入力して、SQLでとってくるやつ作って!!

です。

コマンドプロンプト画面から取得したい値を入力できるようになったら楽だよね!
の発想のもと、取り掛かることに。。。

作り方としては、
batでSQLファイルを呼び出す方法、
batファイルにSQL直打ちがありますが、
1つのファイルで終わらせたかったので、後者の直打ちを選択。

コマンドプロンプトの画面で変数を代入できるよう
下記の通りに記載します。

set /p 変数="値を入力して下さい:"

コマンドプロンプトに入力するとあら不思議。
変数に代入されてくれます。

そしてここで、さらにこの値を直打ちしているSQLコマンドに渡します。

sqlcmd -S **.*.***.** -d *** -U ** -P *** -o hoge.log -Q "SELECT * FROM テーブル名 WHERE カラム名=%変数%"

と書くと、
値が引き渡されて、指定した値でレコードを取ってきてくれるというわけです。
しかも、ログに取得したデータが出力されるようにしているのです。
コマンドプロンプトから変数の値を入力できるのって地味に便利なので感動しました。

SQLサーバーを触らない環境にいる人のために作成しておいてもいいかもしれません。

作成している最中に同じことをしている人がいないか探してみたのですが、
記事が見当たらなかったのでこちらに残しておいたというわけなのでした。
ちゃんちゃん。

コメントを残す

%d人のブロガーが「いいね」をつけました。