MS SQL Server database’de bulunan objeler (tables, views,sp, functions, vb.) hakkındaki bilgileri bir tabloda tutmaktadır. Bu tablo SQL 2000 de sysobjects view’i yada SQL2005-2008 de bulunan sys.objects view’leri ile erişilebilip sorgulama yapılabilmekteyiz. Büyük databaselerde bir çok obje (table,view,sğ,function vb.) içerisinde bazen aradığımız bir kodu bulmamız uzun sürebilir. Bu script sayesinde database de bulunan tüm objeler içerisinde arama yapılarak istediğimiz kodu çok hızlı bir şekilde bulabiliriz.
DECLARE @Search VARCHAR(255) SET @Search = 'keyword' SELECT DISTINCT LEFT(so.name, 100) AS Object_Name , LEFT(CASE so.type WHEN 'AF' THEN 'Aggregate function (CLR)' WHEN 'C' THEN 'CHECK constraint' WHEN 'D' THEN 'DEFAULT (constraint or stand-alone)' WHEN 'F' THEN 'FOREIGN KEY constraint' WHEN 'FN' THEN 'SQL scalar function' WHEN 'FS' THEN 'Assembly (CLR) scalar-function' WHEN 'FT' THEN 'Assembly (CLR) table-valued function' WHEN 'IF' THEN 'SQL inline table-valued function' WHEN 'IT' THEN 'Internal TABLE' WHEN 'P' THEN 'SQL Stored Procedure' WHEN 'PC' THEN 'Assembly (CLR) stored-procedure' WHEN 'PG' THEN 'Plan guide' WHEN 'PK' THEN 'PRIMARY KEY constraint' WHEN 'R' THEN 'Rule (old-style, stand-alone)' WHEN 'RF' THEN 'Replication-filter-procedure' WHEN 'S' THEN 'System base table' WHEN 'SN' THEN 'Synonym' WHEN 'SQ' THEN 'Service queue' WHEN 'TA' THEN 'Assembly (CLR) DML trigger' WHEN 'TF' THEN 'SQL table-valued-function' WHEN 'TR' THEN 'SQL DML trigger' WHEN 'TT' THEN 'Table type' WHEN 'U' THEN 'Table (user-defined)' WHEN 'UQ' THEN 'UNIQUE constraint' WHEN 'V' THEN 'View' WHEN 'X' THEN 'Extended stored procedure' END, 35) AS Object_Type FROM syscomments sc INNER JOIN sysobjects so ON so.id = sc.id WHERE text LIKE '%' + @Search + '%' ORDER BY 2 , 1
Script’i örnek olarak AdventureWorks veri tabanında Customer keyword’ünü arayarak çalıştırdığımda aşağıdaki gibi bir sonuca ulaştım. Bu sonuca göre istediğim kodu bu objeler içerisinde bulup düzenleyebilirim.
Mapping SQL Server 2000 System Tables to SQL Server 2005 System Views
Bir cevap yazın
Yorum yapabilmek için giriş yapmalısınız.