sql >> Databasteknik >  >> RDS >> Sqlserver

Ta reda på vilka vyer (om några) ett fält används i (med hjälp av beroenden?)

För din fråga

man kan använda systemvyn VIEW_COLUMN_USAGE i din databas. Jag skapade den här vyn

USE [ScratchPad]
GO
CREATE VIEW [dbo].[View_1]
AS
SELECT     second
FROM         dbo.deleteme
GO

Med hjälp av frågan nedan:

SELECT TOP 1000 [VIEW_CATALOG]
      ,[VIEW_SCHEMA]
      ,[VIEW_NAME]
      ,[TABLE_CATALOG]
      ,[TABLE_SCHEMA]
      ,[TABLE_NAME]
      ,[COLUMN_NAME]
  FROM [ScratchPad].[INFORMATION_SCHEMA].[VIEW_COLUMN_USAGE]

Jag fick det här resultatet som inkluderar kolumnen och tabellnamnet

## VIEW_CATALOG VIEW_SCHEMA VIEW_NAME   TABLE_CATALOG   TABLE_SCHEMA    TABLE_NAME  COLUMN_NAME
ScratchPad       dbo                      View_1     ScratchPad dbo          deleteme   second

Lägg till en WHERE-klausul i frågan så bör du få ditt svar.

Om du vill titta på begränsningar använd vyn "[INFORMATION_SCHEMA].[CONSTRAINT_COLUMN_USAGE]"

Mitt system är MSSS 2K8 ditt 2K5-system bör ha samma systemvyer



  1. Innehåll per användare:två tabeller med kolumner med samma namn eller sammanfogning?

  2. Varför "utländsk nyckel-begränsning misslyckas" när främmande nyckel finns?

  3. Att använda sp_executesql med params klagar över behovet av att deklarera en variabel

  4. Sammanfoga rader som array från en annan tabell för varje rad