TIPS |
ロックエスカレーションを無効にする |
ALTER TABLE テーブル名 SET (LOCK_ESCALATION = DISABLE)
|
インデックスの断片化と再構成と再構築 |
[断片化]
SELECT
avg_fragmentation_in_percent
FROM sys.dm_db_index_physical_stats
(
DB_ID(N'データベース名'), OBJECT_ID(N'テーブル名'), NULL, NULL, NULL
) AS a
JOIN sys.indexes b
ON a.ojbect_id = b.object_id
AND a.index_id = b.index_id
[再構成]
ALTER INDEX ALL ON テーブル名 REORGANIZE;
[再構築]
ALTER INDEX ALL ON テーブル REBUILD;
|
接続ユーザ |
SELECT * FROM sys.dm_exec_sessions
|
データベースファイルと圧縮 |
[データファイル(mdf)]
DBCC SHRINKDATABASE(データ論理名)
[ログファイル(ldf)]
DBCC SHRINKFILE(ログ論理名)
|
実行プランと実行計画 |
[実行計画]
SET SHOWPLAN_TEXT, SHOWPLAN_ALL
[実行プラン]
SET STATITICS PROFILE ON
確認したいSQL
SET STATITICS PROFILE OFF
|
インデックスとロック |
[更新SQL]
クラスタ化インデックスを走査し非クラスタ化インデックスを更新する
[参照SQL]
非クラスタ化インデックスを先に走査した後クラスタ化インデックスを参照する
※ダーティリードが可能であれば"nolock"をつける
|
Image型にファイル内容を入れる |
OpenRowSet関数を使う
例)テーブル a_tbl , 列 (id, data)
insert into a_tbl
select
'idxxx' , bulkcolumn
from openrowset(bulk N'D:¥file.data', SINGLE_BLOB)
|
シノニムとリンクサーバ |
[シノニム]
別名を付与する
[リンクサーバ]
他のDBのテーブルを参照したい時に作成する(ユーザとパスワードの指定あり)
|
照合順序 |
Japanese_XX_XX....
[CI/CS] 大文字小文字の区別
CI: しない
CS: する
[AI/AS] アクセントの区別
AI: しない
AS: する
[KI/KS] ひらがなとカタカナ
KI: しない
KS: する
[WI/WS] 半角/全角の区別
WI: しない
WS: する
|
件数を絞って表示 |
SELECT top 10 * from xxxxx
10件を表示(フェッチした順番に10件)
|
ロックの種類 |
S-Lock 共有ロック
S-Lock可能。X-Lock不可。
X-Lock 専有ロック
S-Lock不可。
弱い S-Lock "nolock"でロック
専有ロック可能。ただし、ファントムリードしやすい
|