SQL Server/SQL
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
-テーブルの特定の位置にカラムを追加する ... SQL Serverで...
--[[SQL ServerのT-SQLでテーブルの特定の位置にカラム (列、...
--SQL Management Studioでやるしかない
*実行SQL [#v2885d29]
-[[sys.dm_exec_sql_text (Transact-SQL):https://docs.micro...
-[[sys.dm_exec_query_stats (Transact-SQL):https://docs.mi...
-[[現在実行中のSQLを調べる:https://haradago.hatenadiary.o...
-[[SQL Server で実行された SQL を SQL で取得する方法:http...
-現在実行中のSQLを表示
select sql.text as クエリ,
db.name as DB,
req.session_id,
req.command,
req.status,
req.wait_type,
req.last_wait_type,
req.wait_time,
req.total_elapsed_time,
--(req.total_elapsed_time/1000) as 経過時間_秒,
req.start_time as 処理開始日時
from sys.dm_exec_requests req cross apply sys.dm_exec_sq...
sys.databases db
where db.database_id = req.database_id
-指定日時以降に実行されたSQLを表示
SELECT st.text
,last_execution_time
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
WHERE last_execution_time >= '2020/03/12 12:00:00'
ORDER BY last_execution_time
-CPU の平均時間で順位付けされた上位5つのクエリに関する情報
SELECT TOP 5 total_worker_time/execution_count AS [Avg C...
SUBSTRING(st.text, (qs.statement_start_offset/2)+1,
((CASE qs.statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset
END - qs.statement_start_offset)/2) + 1) AS sta...
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
ORDER BY total_worker_time/execution_count DESC;
*原因究明・改善 [#ud18c175]
-[[SQLServer: 現在実行中クエリのリアルタイムトラブルシュ...
-[[SQLパフォーマンスtips(SQLServer):https://qiita.com/kaz...
**とりあえず実行計画 [#t533b7ee]
-[[【SQL Server】実行計画を見てみよう:https://www.w2solut...
-テキスト表示
--SQLの実行時に「SET STATISTICS PROFILE ON」文を追加
-グラフィカル表示
--メニューバー内「実際の実行プランを含める」アイコンをク...
***Clustered Index Update [#n04401c3]
-[[Clustered Index Update Slow Update On Large Table:http...
**クエリタイムアウト [#le9f44c5]
-[[SQL Serverで断続的に発生するクエリタイムアウトの原因を...
**suspended [#j5370b1e]
-[[「ロックされたわけではない」のに終わらない処理がある(...
**WAIT_TYPE [#j2562a70]
-[[sys.dm_os_wait_stats (Transact-SQL):https://docs.micro...
-[[SQL Server の Wait Statistics オブジェクト:https://doc...
-[[SQL Serverのロックについて出来る限り分かりやすく解説:h...
-[[SQL Serverで今何がロックされているか確認する:https://s...
-[[ZOZOTOWNで最大級のトラフィックを記録する福袋発売イベン...
-[[「待ち事象」を起点とした SQL Server のボトルネックの調...
-[[「待ち事象」を起点とした SQL Server のボトルネックの調...
-[[すぐに終了するはずの処理が、急に「いつまでたっても」終...
***LCK_M_U [#maa104cf]
-タスクが更新ロックの取得を待機しているときに発生
***LCK_M_X [#n947ab2f]
-タスクが排他ロックの取得を待機しているときに発生
***LATCH_EX [#cb01897f]
-[[【SQL server】ラッチ状況の確認:https://memorandom-nish...
***PAGEIOLATCH_EX [#p9bb3553]
*テーブル有無 [#h2795c39]
-[[【SQL Server】テーブルの存在チェックするやり方を解説し...
IF OBJECT_ID (N'テーブル名', N'U') IS NOT NULL
「テーブルが見つかったときの処理」
ELSE
「テーブルが見つからなかったときの処理」
-OBJECT_ID関数に指定する引数は
--第一引数:オブジェクト名
--第二引数:オブジェクトタイプ
-第二引数に【N'U'】を指定する理由は、【N'U'】がテーブルの...
*Tips [#ka23c672]
-[[複数の列で in 句を使いたい:https://odashinsuke.hatenab...
**変数 [#ca325574]
-[[SQL Server: 変数にSELECTした結果を代入する方法:https:/...
-[[sql-server – クエリ結果を変数に格納し、それをストアド...
-[[SELECT した結果をカーソルを使用してループ処理をする方...
**乱数 [#ycc00736]
-[[[SQLServer] 指定した範囲内の乱数を生成する:https://pro...
**SQL [#e8512fe6]
***データコピー [#e56be143]
insert [コピー先DB].dbo.[テーブル名]
select [コピー元DB].dbo.[テーブル名]
*トラブルシューティング [#k73b6a49]
***この SqlTransaction は完了しています。再度使用すること...
-[[DataAdapter.Update実行時に発生するタイムアウトに対する...
-[[[ASP.NET]SQL実行時エラー「SqlTransactionは完了していま...
終了行:
-テーブルの特定の位置にカラムを追加する ... SQL Serverで...
--[[SQL ServerのT-SQLでテーブルの特定の位置にカラム (列、...
--SQL Management Studioでやるしかない
*実行SQL [#v2885d29]
-[[sys.dm_exec_sql_text (Transact-SQL):https://docs.micro...
-[[sys.dm_exec_query_stats (Transact-SQL):https://docs.mi...
-[[現在実行中のSQLを調べる:https://haradago.hatenadiary.o...
-[[SQL Server で実行された SQL を SQL で取得する方法:http...
-現在実行中のSQLを表示
select sql.text as クエリ,
db.name as DB,
req.session_id,
req.command,
req.status,
req.wait_type,
req.last_wait_type,
req.wait_time,
req.total_elapsed_time,
--(req.total_elapsed_time/1000) as 経過時間_秒,
req.start_time as 処理開始日時
from sys.dm_exec_requests req cross apply sys.dm_exec_sq...
sys.databases db
where db.database_id = req.database_id
-指定日時以降に実行されたSQLを表示
SELECT st.text
,last_execution_time
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
WHERE last_execution_time >= '2020/03/12 12:00:00'
ORDER BY last_execution_time
-CPU の平均時間で順位付けされた上位5つのクエリに関する情報
SELECT TOP 5 total_worker_time/execution_count AS [Avg C...
SUBSTRING(st.text, (qs.statement_start_offset/2)+1,
((CASE qs.statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset
END - qs.statement_start_offset)/2) + 1) AS sta...
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
ORDER BY total_worker_time/execution_count DESC;
*原因究明・改善 [#ud18c175]
-[[SQLServer: 現在実行中クエリのリアルタイムトラブルシュ...
-[[SQLパフォーマンスtips(SQLServer):https://qiita.com/kaz...
**とりあえず実行計画 [#t533b7ee]
-[[【SQL Server】実行計画を見てみよう:https://www.w2solut...
-テキスト表示
--SQLの実行時に「SET STATISTICS PROFILE ON」文を追加
-グラフィカル表示
--メニューバー内「実際の実行プランを含める」アイコンをク...
***Clustered Index Update [#n04401c3]
-[[Clustered Index Update Slow Update On Large Table:http...
**クエリタイムアウト [#le9f44c5]
-[[SQL Serverで断続的に発生するクエリタイムアウトの原因を...
**suspended [#j5370b1e]
-[[「ロックされたわけではない」のに終わらない処理がある(...
**WAIT_TYPE [#j2562a70]
-[[sys.dm_os_wait_stats (Transact-SQL):https://docs.micro...
-[[SQL Server の Wait Statistics オブジェクト:https://doc...
-[[SQL Serverのロックについて出来る限り分かりやすく解説:h...
-[[SQL Serverで今何がロックされているか確認する:https://s...
-[[ZOZOTOWNで最大級のトラフィックを記録する福袋発売イベン...
-[[「待ち事象」を起点とした SQL Server のボトルネックの調...
-[[「待ち事象」を起点とした SQL Server のボトルネックの調...
-[[すぐに終了するはずの処理が、急に「いつまでたっても」終...
***LCK_M_U [#maa104cf]
-タスクが更新ロックの取得を待機しているときに発生
***LCK_M_X [#n947ab2f]
-タスクが排他ロックの取得を待機しているときに発生
***LATCH_EX [#cb01897f]
-[[【SQL server】ラッチ状況の確認:https://memorandom-nish...
***PAGEIOLATCH_EX [#p9bb3553]
*テーブル有無 [#h2795c39]
-[[【SQL Server】テーブルの存在チェックするやり方を解説し...
IF OBJECT_ID (N'テーブル名', N'U') IS NOT NULL
「テーブルが見つかったときの処理」
ELSE
「テーブルが見つからなかったときの処理」
-OBJECT_ID関数に指定する引数は
--第一引数:オブジェクト名
--第二引数:オブジェクトタイプ
-第二引数に【N'U'】を指定する理由は、【N'U'】がテーブルの...
*Tips [#ka23c672]
-[[複数の列で in 句を使いたい:https://odashinsuke.hatenab...
**変数 [#ca325574]
-[[SQL Server: 変数にSELECTした結果を代入する方法:https:/...
-[[sql-server – クエリ結果を変数に格納し、それをストアド...
-[[SELECT した結果をカーソルを使用してループ処理をする方...
**乱数 [#ycc00736]
-[[[SQLServer] 指定した範囲内の乱数を生成する:https://pro...
**SQL [#e8512fe6]
***データコピー [#e56be143]
insert [コピー先DB].dbo.[テーブル名]
select [コピー元DB].dbo.[テーブル名]
*トラブルシューティング [#k73b6a49]
***この SqlTransaction は完了しています。再度使用すること...
-[[DataAdapter.Update実行時に発生するタイムアウトに対する...
-[[[ASP.NET]SQL実行時エラー「SqlTransactionは完了していま...
ページ名: