問題タブ [osql]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - osql.exe はスタンドアロンとして実行できますか?
Microsoft SQL Server Tools ディレクトリから osql.exe を実行し、スクリプトを実行するプログラムがあります。
問題は、SQL Server がインストールされていないコンピューターでは、このツールが見つからないことです。したがって、私の質問は、アプリケーションのローカル ディレクトリから Process.Start から実行することを意味するスタンドアロンとして (必要な dll と共に) 実行できるかどうかです。
nant - nant スクリプトで osql を使用する
現在、引数付きのバッチファイルを呼び出して、nant で osql を使用しています。私のnantスクリプトで定義されているプロパティは次のとおりです(いいえ、実際のユーザー名/パスワードの値ではありません):
次に、ユーザー名/パスワードに基づいて osql 接続を作成します。
次に、これらの値をバッチ ファイルに渡します。
setup.bat ファイルは osql を使用してデータベースを削除します。
ユーザー名/パスワードを nant スクリプトに渡さず、代わりに統合セキュリティを使用する場合 (「-E」を osql に指定)、これは正常に機能します。ユーザー名/パスワードを指定すると、nant スクリプトは一時停止します (何らかの入力を待っているように)。SQL 接続マネージャーにログインしてデータベースを削除できるため、正しいユーザー名/パスワードを指定していることはわかっています。
何を試すか、またはこれを行う別の方法について提案があれば教えてください。
sql-server - バッチファイルを実行して、SQLServerDBの奇妙な文字でフィールドを更新する
SQLServerデータベースにFieldというテーブルがあります。テーブルには「ユニット」というフィールドがあります。
OSQLを使用してここに多くのものを挿入するバッチスクリプトがあり、入力されたものの1つはポンド記号(£)です。OSQLがクエリを実行すると、代わりに£記号が-úに変換されます。
私が持っている必要があるのは、最後にこれをすべて更新する別のバッチファイルです
例えば
上記のSQLは、クエリで実行すると正常に機能しますが、OSQLでは機能しません。
TextPadでDOSモードでファイルを編集すると、£のDOS記号を入力でき、そのビットは問題なく機能することがわかりましたが、-ú部分を置き換える方法がわからないため、置き換えることができます。
何か案は?
powershell - PowerShellの使用を開始するためのヘルプ-古いBAT+SQLファイルを書き直します
私はPowerShellをまったく使用したことがないので、始めるには助けが必要です。私が必要としているのは、SQLデータベースをバックアップする小さなスクリプトを作成することですが、毎回異なる名前を使用します(最後の4〜5バージョンのみを保持するため)。現在、私はBATを持っています。これは、以下のように、SQLスクリプトを使用してosqlを起動するだけです。
そして、バックアップスクリプトは
このBATは、タスクスケジューラによって実行されます。明らかに、異なるDBバックアップファイルは作成されません。私が欲しいのは、すべてをPowerShellスクリプトに置き換えて、ターゲットディレクトリを調べ、最後のN個のバックアップファイル(最新のものから開始)のみを保持してから、次のようなバックアップファイル名を生成することです。
その中でバックアップします。
それを行うための簡単なC#コンソールアプリケーションを作成することもできますが、Powershellでのプレイとテストを開始したいと思います。
どんな助けでも大歓迎です。
ありがとうございました
java - osql-Sで期待した結果が得られない
osql
サーバー上にデータベースのリストを生成するために使用するJavaでプログラムを作成しようとしています。私のコードは次のとおりです。
これを実行すると、何らかの理由で、実行したかのようなメッセージが表示されますがosql -?
、明らかに実行していません。
何が間違っているのかわからないので、助けていただければ幸いです。本当にありがとう!
command-line - データ ソース名が見つからず、既定のドライバーが指定されていません
を使用して、ネットワーク上のサーバーを一覧表示するために接続しようとしていますosql.exe -L
。ただし、サーバーのリストの代わりに、次のエラーが表示されます。
[ODBC Driver Manager] Data source name not found and no default driver specified
何がこの問題を引き起こしているのかわかりません - 正しい方向に導くポインタは役に立ちます。本当にありがとう!
command-line - osql.exe をスタンドアロンとして実行するには、どの dll が必要ですか?
この質問に対する受け入れられた回答によると、osql.exe ユーティリティは、バイナリ ファイルを新しいコンピューターにコピーするだけで、SQLServer のないコンピューターでスタンドアロン プログラムとして実行できます。しかし、私の質問は、osql.exe が機能するために、osql.exe と一緒にコピーする必要がある他のファイルはどれですか?
本当にありがとう!
sql-server - OSQLの@@ROWCOUNTは、TSQLとは異なる結果を返します
OSQLで奇妙な動作が発生しているので、助けていただければ幸いです。
データベースフィールドをある列から別の列にコピーするバッチファイルがあります。サンプルスクリプトは次のとおりです。
すべてのEmailAddressフィールドがNULLではなくなったとすると、updateステートメントは@@ROWCOUNT0を返すと思います。
- 例1:
上記のクエリをクエリアナライザで実行すると、@@ROWCOUNTに0が返されます。それは良い。
- 例2:
Test.Sqlには、上記とまったく同じSQLステートメントが含まれています。次のOSQLステートメントを使用すると、@@ROWCOUNTにも0が返されます。
- 例3:
SQLファイルではなくバッチファイルにSQLステートメントがある場合、@@ROWCOUNTは2になります。
たとえば3のようにスイッチを間違って設定していませんか?@@ ROWCOUNTが0ではなく2になるのはなぜですか?
スクリプトを初めて実行したとき、更新されたレコードが3つだけのときに、@@ROWCOUNTが5になりました。
sql-server - コマンドラインからダッシュ文字なしでOSQL.exeから結果を取得するにはどうすればよいですか?
列幅を表すダッシュ文字の大きな長い行を含まない結果を返すコマンドラインからosqlクエリを送信する方法はありますか?
これが私が使っているサンプルコードです:
結果は次のようになります。
sql-server-2005 - osql.exe の使用エラー (Sql Server 2005)
私はSQLサーバー2005エンタープライズ、Windowsサーバー2003を使用しています。
サーバーDESSQLでsqlファイルを実行するために、osql.exeコマンドを実行してみます。
次のエラーが表示されます。
アップデート:
私もこれを試して、
最後に、SQLCMD コマンドを使用します。
SQLCMD -E -b -i"CarpetaUno\TextFile1.sql"
しかし、osql コマンドを使用しても機能しません!!
私はテストします:
1.) -S ServerName オプションを使用して、
2.) 絶対パスを使用: osql.exe -E --i C:\CarpetaUno\TextFile1.sql
3.) TextFile1.sql の内容、問題ありません。SSMS を使用してテストします
しかし、すべてのテストで同じエラーが発生します。
ファイルでutf-8エンコーディングを使用すると失敗しますか???
解決策はありますか?