• well can you explain the scenario please because see the following code

    USE tempdb

    GO

    CREATE TABLE [dbo].[EmpTbl](

    [Employeeid] [int] NOT NULL,

    [EmployeeName] [varchar](50) NULL,

    [Department] [varbinary](50) NULL,

    [Supervisorid] [int] NULL,

    CONSTRAINT [PK_EmpTbl] PRIMARY KEY CLUSTERED

    (

    [Employeeid] ASC

    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

    ) ON [PRIMARY]

    GO

    ALTER TABLE [dbo].[EmpTbl] WITH CHECK ADD CONSTRAINT [FK_EmpTbl_EmpTbl] FOREIGN KEY([Supervisorid])

    REFERENCES [dbo].[EmpTbl] ([Employeeid])

    GO

    ALTER TABLE [dbo].[EmpTbl] CHECK CONSTRAINT [FK_EmpTbl_EmpTbl]

    GO

    DECLARE @TableName AS VARCHAR(250)='EmpTbl'

    ;WITH cte AS

    (

    SELECT cast(OBJECT_NAME (fkc.parent_object_id) as VARCHAR(MAX)) AS TableRelation, OBJECT_NAME(fkc.parent_object_id) AS DependentTable, fkc.parent_object_id AS

    childID, 1 AS ReLevel

    FROM sys.foreign_key_columns fkc

    WHERE fkc.referenced_object_id = OBJECT_ID (@TableName)

    UNION ALL

    SELECT cast(c.TableRelation +'-->'+ OBJECT_NAME (fkc.parent_object_id) AS VARCHAR(MAX)) AS TableRelation, OBJECT_NAME(fkc.parent_object_id) AS DependentTable, fkc.parent_object_id AS

    childID, c.ReLevel + 1

    FROM sys.foreign_key_columns fkc

    INNER JOIN cte c

    ON fkc.referenced_object_id = c.Childid AND fkc.parent_object_id<>c.childid

    )

    SELECT TableRelation,DependentTable

    FROM cte

    DROP TABLE EmpTbl

    it only return one row

    Every rule in a world of bits and bytes, can be bend or eventually be broken
    MyBlog About Common dialog control
    A Visualizer for viewing SqlCommand object script [/url]