web-dev-qa-db-ja.com

SQL Serverクライアントツールをインストールすると、OSQLを取得できますか?

ネットワーク上の既存のSQL Serverインスタンス/ dbsに対するosqlコマンドでいっぱいのレガシー.batスクリプトがいくつかあります。

アプリサーバー(Win Server 2008)から.batスクリプトを実行しようとしましたが、「osql.exe」は内部または外部コマンドとして認識されません」というエラーが表示されます。

Osqlにアクセスするために本格的なSQL Serverをインストールする必要がないことを願っています。

クライアントツールのインストールから取得できると聞きましたが、ライセンスされたSQLサーバーに接続している限り、ライセンスは必要ありません。 (私たちはそうなるでしょう)。

誰か確認できますか? 「クライアントツール」はインストールディスクの一部ですか?
これは実行可能なソリューションですか?

助けてくれてありがとう!

4
knuckle05

主な推奨事項は次のとおりです。

  • インストールディスク/ファイルがある場合は、クライアントツールのみをインストールできます。

  • ダウンロード SQL Server 2012(SP1)Express (「SQL Server Management Studio Express(ツールのみ)」バージョンを最初に試します)

  • チェックアウト: http://www.mssqltips.com/sqlservertip/1807/sql-server-2008-client-tools-installation/

  • OSQLがインストールされたマシンを既に持っている場合は、次の2つのファイルだけを新しいサーバーにコピーして(同じディレクトリに配置)、それを機能させることができます。

    • C:\ Program Files\Microsoft SQL Server\110\Tools\Binn\OSQL.EXE
    • C:\ Program Files\Microsoft SQL Server\110\Tools\Binn\Resources\1033\osql.rll

ライセンスに関する限り、次のファイルを見つけました。

C:\ Program Files\Microsoft SQL Server\110\Tools\Binn\Resources\1033\license_SQLCMD.txt

次のスニペットがあります。

マイクロソフトソフトウェアライセンス条項Microsoft SQL SERVER 2012コマンドラインユーティリティ
...
1。インストールおよび使用権。お客様は、プログラムを設計、開発、およびテストするために、デバイスに任意の数のソフトウェアのコピーをインストールして使用することができます。

注:
OSQLはSQLCMDに置き換えられました。 OSQLを実行すると、次のメッセージが表示されます。

注:osqlはSQL Server 2012のすべての機能をサポートしていません。代わりにsqlcmdを使用してください。詳細については、SQL Server Books Onlineを参照してください。

ただし、既存のコードがOSQLを想定している場合は、最初にコードでSQLCMDをテストして、OSQLとSQLCMD間の動作の変更によってコードが破損しないことを確認する必要があります。

7
Solomon Rutzky

使用する必要があるツールは sqlcmd です。これはクライアントツールと共にインストールされ、 非推奨のosql を置き換えます。

4
Mike Fal

これは、提供されたヒントに基づいて私にとってうまくいきました:

  1. osql.exeをコピーしてC:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binnフォルダにドロップしました
  2. C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binnはすでに環境変数PATHに割り当てられています

その後、osql.exeを必要とするバッチファイルを実行できました。コピーしたosql.exeのバージョンが非常に古いことに注意してください(1998年11月)

有益な情報を提供していただきありがとうございます。

0
Betsy