DB調査

プログラム

SQLServer、Oracleでオブジェクト検索、データ検索を行う場合があります。
その概要まとめです。

■SQLServer

–オブジェクトの中身
select b.name, definition, a.object_id, b.type
from sys.sql_modules a
inner join dbo.sysobjects b on a.object_id=b.id
order by b.type, b.name

–テーブルの列(データ調査で使用)
select
t.name as TblName,
c.name as ColName,
type_name(user_type_id) as kata,
max_length
FROM sys.objects t
INNER JOIN sys.columns c ON t.object_id = c.object_id
WHERE t.type = ‘U’
order by t.name

–JOB
select j.name,
s.step_id,
s.step_name,
s.command,
c.name,
s.subsystem
from msdb.dbo.sysjobs j
inner join msdb.dbo.sysjobsteps s on j.job_id = s.job_id
inner join msdb.dbo.syscategories c on j.category_id = c.category_id
where j.enabled=’1′
order by c.name, j.name, s.step_id

■Oracle
–オブジェクトの中身
select NAME, TYPE, LINE, TEXT, ORIGIN_CON_ID from USER_SOURCE
where TEXT like ‘%キーワード%’

–テーブルの列(データ調査で使用)
select a.TABLE_NAME, a.COLUMN_NAME, a.DATA_TYPE, a.DATA_LENGTH
from USER_TAB_COLUMNS a, USER_TABLES b
where a.TABLE_NAME = b.TABLE_NAME
order by a.table_name, a.column_name

コメント

タイトルとURLをコピーしました