2011-02-06 85 views
1

在我的.NET程序中,我想通過插入新列來修改數據庫表的結構。但我不想通過ADO.NET在數據庫上運行「ALTER TABLE .....」命令來完成此操作。我想通過在我的數據表中添加新列來實現。所以當我更新關聯的tableAdapter時,物理表結構將會改變。如何使用SqlDataAdapter和DataTable將新列插入到數據庫表中?

的代碼,這是我希望的工作是這樣的:

 SqlCommand cmd = new SqlCommand("SELECT * FROM EMPLOYEE", conn); 
     SqlDataAdapter adapter = new SqlDataAdapter(cmd); 
     DataTable dt = new DataTable(); 
     adapter.Fill(dt); 
     dt.Columns.Add(new DataColumn("BirthDate")); 
     adapter.Update(dt); 

但事實並非如此。

如果有可能,我該怎麼辦?

回答

1

你不能這樣做。

的.NET數據表是磁盤上的數據庫結構的只是一個表象 - 有一個在ADO.NET DataTable的代碼中沒有的功能,支持產生更新基礎表,當你改變你的DataTable的結構。

你將不得不使用ALTER TABLE ..... SQL語句來實現你正在尋找的東西 - 恐怕沒有辦法。

相關問題