2013-08-30 57 views
2

是否可以在SQL Server中將表數據類型定義爲表變量中的表? 像我想這碼表變量中的表數據類型

Declare @master table(
    idx int identity(1,1), 
    ID int, 
    Title nvarchar(250), 
    IntegratedAccounts table(
          AccountID int, 
          AccountTitle nvarchar(250) 
         ) 
) 

我想要從我的表變量設置爲填充在C#中的DataTable的是結構化的結果爲:

var dt = new DataTable(); 
    dt.Columns.Add("idx", typeof(int)); 
    dt.Columns.Add("ID", typeof(int)); 
    dt.Columns.Add("Title", typeof(string)); 
    dt.Columns.Add("IntegratedAccounts", typeof(DataTable)); 
+2

有在SQL Server中沒有嵌套的表格。最好的選擇通常是'xml'列(因爲它至少可以讓你保持數據的結構) –

回答

2

回答是否定的,你不能在SQL。就這麼簡單:)

但是你可以涉及到表來實現與外鍵

的幫助下,相同的結果因此實現

table((idx int identity(1,1), ID int, Title nvarchar(250), IntegratedAccounts table(AccountID int, AccountTitle nvarchar(250))) 

可以使2臺

table (idx int identity(1,1), ID int, Title nvarchar(250), account_id) 

and

table2(AccountID int, AccountTitle nvarchar(250)) 

和你的table.account_id references to table2.AccountID

這可以幫助你實現你想要什麼..