ラベル mssql の投稿を表示しています。 すべての投稿を表示
ラベル mssql の投稿を表示しています。 すべての投稿を表示

2010-09-07

SQL Serverでのファイル出力込みのバッチ処理

SQL Serverで考える機会があったため、エントリー。

SQL Serverではストアドプロシージャを使用した複数レコードのファイル出力はコマンドレベルでサポートされていない。
sqlcmdを使用して出力できるのはPRINT文やメッセージ、あるいはSELECT文での結果の出力に限定される。

だがこれだと1レコード毎に処理しつつファイル出力できない。
カーソルを使用して処理を行い、正常処理されたレコードのみ出力するにはどうするか?

そんな時はファイル出力用のテーブルを用意しよう。
ストアドプロシージャで正常処理された結果のみそのテーブルに追加し、その後sqlcmdでselect文でファイル出力すれば良い。
処理中エラーが発生した時はエラーコードをかえしたり、エラーメッセージを返すストアドプロシージャを作成すればなお良い。

2007-07-01

SQL Server 2005 Express Edition + JDBC接続

仕事上テストする必要があるため、テストしてみた。

1.Microsoft SQL Server 2005 JDBC Driver 1.1をダウンロード。
2.クラスパスにsqljdbc.jarを追加。
3.Windows\SYSTEM32の下にsqljdbc_auth.dllをコピー。
4.SQL Server Configuration ManagerでTCP/IPが無効になっているので有効に変更。
5.TCP/IPのプロパティの[IP アドレス]タブでTCP動的ポートを1433に変更。
6.Expressのインスタンスを再起動。

これでWindows認証で接続可能になった。

URLは以下の通り。
jdbc:sqlserver://localhost:databaseName=SAMPLEDB;integratedSecurity=true;