2013-03-01から1ヶ月間の記事一覧

mdfファイルのみのアタッチ

mdfファイルのみ存在する場合、通常にアタッチしようとするとエラー9003が発生しアタッチできない。 もし、アタッチしたい場合は、一旦SQLServerはオフラインにし、 アタッチしたいmdfファイル名を既存のmdfファイル名にリネームしてSQL Server を起動すると…

tempDBのファイル数をCPU数に合わせる

sys.dm_exec_requestのWaitTypeでページラッチ(PAGELATCH)に関する待機イベントが 多発している場合、tempdbに対する競合がおこっている可能性があるので プロセッサ(コア)の数と同じ数にtempdbのファイル数を増やしてやるとよい。 (特に一時テーブルなど…

現在実行中のSQLを調べる

sys.dm_exec_requestsビューで現在要求されている内容を確認することができる。 sys.dm_exec_requestsより現在実行中のSQLの情報を調べるのは以下の通り。 select sql.text as SQLテキスト, req.session_id, req.status, req.command, (req.total_elapsed_ti…

ロックエスカレーション

行単位のロックを多数を行うより1つのテーブルロックを行ったほうが性能が向上することがある。 そのかわり、同時実行の競合が行われる可能性が向上する。 SQLServerではこのロックエスカレーションがデフォルト有効になっているが 以下の方法でロックエス…

DataGridViewからDataTableを取得

DataGridViewでソートをしたときなどにバインドしているDataTableとRowIndexがずれてしまう。 以下、DataGridViewのRowIndexよりDataTableのRowIndexを取得する例。 'DataGridViewのRowオブジェクトを取得 Dim Dtrow As System.Data.DataRowView = CType(Me.…

VSSの履歴を取得

VSSの履歴をコマンドで取得する方法は以下の通り ::SSのSS.exeのあるフォルダに移動 cd C:\Program Files\Microsoft Visual SourceSafe ::接続ユーザ・パスワード・接続先を指定 set ssUser=hogeuser set ssPwd=hogepas set ssDir=\\hogeserver\test ::履歴…

documentをキャッシュ

Js

documentオブジェクトはローカルにキャッシュした方が処理速度が速い。。 理由はdocumentオブジェクトを使用すると内部メソッドが呼ばれてしまうかららしい。。。 以下、キャッシュして使用する使用例 function hoge() { var doc = document; //こんなふうに…