2013-01-01から1年間の記事一覧
稼動しているシステムのあるテーブルのデータ量が多くなり、 データ取得に時間がかかっていたので、 インデックスを追加して改善を行いました。 分かりやすいページだったのでメモしておきます。 http://www.atmarkit.co.jp/ait/articles/0501/18/news097.ht…
SQLServerのオブジェクトエクスプローラからテーブルを開く際、"上位○○○行の編集"となっていて、全ての行を編集する事が出来ない。 初期設定がそのようになっているため、変更したい場合は ツール→オプション→SQLServerオブジェクトエクスプローラの 上位<n…
データ抽出処理で異常に時間がかかるときなどは、 プロファイラで確認すると原因がさぐれる。 プロファイラ上のCPU,Reads,Writes,Durationの各項目の 数値が高い場合は、そのストアドに原因があるかもしれない。 参考URL Microsoft TechNet ライブラリより h…
大量のデータの削除、追加を繰り返し行うと、データの断片化が起きる。 稼動中のシステムでデータ読み込み時に予期せぬエラーが発生したが、 断片化が理由だった。 インデックスの再構築を行うことで解決できた。 オブジェクトエクスプローラでテーブル→イン…
クエリの結果を選択し、右クリックでヘッダーつきでコピーをすれば行えるが、設定することで自動でヘッダーが貼り付くようになる。 ツール→オプション→クエリ結果→SQLServer→結果をグリッドに表示→結果のコピーまたは保存時に列ヘッダーを含めるのチェックボ…
アクセス数が一定を超えると起こる現象(どういったときに起こるかは不明) コントロールパネル→サービスの"Server"を再起動すると解決する。
VB6だとval関数を使っていたが、 .netではparseを使用した方が良いということで。 ParseとTryParseがある。 Integer.Parse("100") ※ただし、空を0に変換しようとするとエラーが発生するTryParseは変換が正常に終了したかどうかを返すDim result As Boolean =…
SQLの文字列中にシングルクォートがある場合 そのままだと構文エラーになる 例) select * from TabeleA where Field1 = 'a'b' →シングルクォートとシングルクォートの間が文字列と認識され、 後ろのb'が無効な文字列となり構文エラーが発生する <対応方法>…
ストアド内でprint文で変数の値を出力させたいとき、 変数の中身のバイト数によっては切り詰められてしまいます。 以下マイクロソフトMSDNより引用 (http://msdn.microsoft.com/ja-jp/library/ms176047.aspx) メッセージ文字列は、Unicode 以外の文字列の場…
SQL実行時のデータ取得速度 あるデータを日付の期間で取得する際、 期間を1日にした場合と2日にした場合で倍以上の時間がかかっていた。 例) 2013/05/13~2013/05/13のデータを取得・・・1秒 2013/05/13~2013/05/14のデータを取得・・・1分 原因を探ったと…
システムに2つの年度を持っている。 (1つは6月~5月、もう1つは4月~3月。) 4月になったときに領収書の発行番号の切り替えが行われるはずが、 もう一方の年度(6月~5月)を見ていたため、切り替わらなかった。 年度切り替え時に初めて動く処理は テストを見…