【SQL Server学習ノート】データベースオブジェクトのメンテナンス、オブジェクト依存
データベースオブジェクトのメンテナンス
CREATE TABLE T(vid int primary key,v varchar(100)) create index idx_v on T(v) -- -- : 。 EXEC sp_rename @objname = 'dbo.T', -- . @newname = 'TT', @objtype = 'object' -- -- EXEC sp_rename @objname = 'dbo.TT.v', -- . . @newname = 'vv', @objtype = 'column' -- -- exec sp_rename @objname ='dbo.TT.idx_v', -- . . @newname = 'idx_vv', @objtype = 'Index' -- -- , -- , ALTER SCHEMA Transfer .
オブジェクト依存-- CREATE DATABASE WCC go CREATE DATABASE WCD go USE WCC GO CREATE TABLE DBO.C(VID INT NOT NULL, VV VARCHAR(10)) GO USE WCD GO CREATE PROCEDURE DBO.PROC_USE_C as select VID,VV from WCC.DBO.C GO SELECT referencing_id, OBJECT_NAME(referencing_id) as objname, referencing_class_desc, -- is_schema_bound_reference, -- referenced_class_desc, -- referenced_server_name, -- referenced_database_name, -- referenced_schema_name, -- -- NULL; , -- , null -- , , is_caller_dependent=1 referenced_id, referenced_minor_id , -- ID is_caller_dependent , -- , -- referenced_id null is_ambiguous -- FROM SYS.sql_expression_dependencies use WCD go create procedure dbo.proc_use_w as select * from wcc.dbo.wccc -- : , go -- select * from sys.sql_expression_dependencies -- select * from sys.dm_sql_referenced_entities('dbo.TT', -- dbo.TT 'Object') --dbo.TT -- select * from sys.dm_sql_referencing_entities('dbo.TT', -- dbo.TT 'object') /*========================================================== : 、 、 、 、 、 、 DML、DDL T-SQL ============================================================*/ select OBJECT_DEFINITION(object_id('dbo.proc_use_c')) -- id -- SELECT object_id, definition --T-SQL FROM SYS.sql_modules WHERE object_id = object_id('dbo.proc_use_c') -- T-SQL select object_id, definition --T-SQL from sys.system_sql_modules