我創建了一個表單系統,該系統接收員工個人資料(目的是創建一個帳戶)資料被正確獲取并輸入資料集(dataSet2)。下面的行是我認為要更新的正確代碼集資料庫(Database1)。資料正確輸入資料集沒有問題,但我根本看不到任何資料輸入資料庫,沒有輸出或提供錯誤代碼。感謝所有幫助。
namespace COMP_SCI_2
{
public partial class staff_createacc : Form
{
public staff_createacc()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string[]DATAINPUT = { IDBOX.Text ,TITLEBOX.Text,FORENAMEBOX.Text,SURNAMEBOX.Text,DATEBOX.Text,STREETBOX.Text,TOWNBOX.Text,POSTCODEBOX.Text,PHONEBOX.Text,EMAILBOX.Text,POSITIONBOX.Text,PASSWORDBOX.Text };
dataSet2.STAFF.Rows.Add (DATAINPUT);
this.sTAFFTableAdapter.Update(this.dataSet2);
}
uj5u.com熱心網友回復:
如果添加了一行,那么您再次運行該應用程式以顯示資料并且沒有顯示任何內容。這聽起來像資料庫駐留在應用程式檔案夾中。
資料庫屬性的默認值Copy to Output Directory意味著Copy always每次應用程式運行時都會覆寫資料庫。您需要更改Copy to Output Directory為Copy if newer
請參閱以下 Microsoft TechNet
編輯 發布此資訊時,沒有看到其他具有相同資訊的帖子。
uj5u.com熱心網友回復:
本地資料檔案在 .NET 專案中以特定方式作業。當您將資料檔案(例如 MDF 或 ACCDB)添加到您的專案時,它就是一個源檔案。它是您專案的一部分,而不是您的應用程式的一部分。構建專案時,輸出將寫入檔案夾。該輸出包含已編譯的 EXE,除其他外,它還可以包含源資料庫的副本。
默認情況下,每次編譯新的 EXE 時都會創建一個新的資料庫副本。這意味著,如果您運行專案并修改資料庫,然后更改代碼并再次運行專案,您的更改將被源資料庫的新副本覆寫。如果您再次運行該專案而不進行任何代碼更改,您將看到您的資料更改已保留。
在解決方案資源管理器中,您的資料檔案具有復制到輸出目錄屬性,并且默認設定為始終復制。這意味著源資料庫在每次構建時都會復制到作業資料庫上。如果您將其更改為Copy if Newer,那么只有在您更改源資料庫時才會覆寫作業資料庫,例如更改架構或初始資料。這樣,您在測驗期間所做的任何更改都將在構建中持續存在,并且您可以在想要強制重繪 時手動洗掉作業檔案。
作為記錄,這樣做的原因是您的源資料庫不會被您的測驗資料污染。如果允許這種情況發生,您必須在部署之前對其進行清理。它的實作方式,您只需更改為 Release,單擊 Build,您的 Release 輸出檔案夾將填充一個干凈的資料庫,準備好部署給您的用戶。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/506400.html
上一篇:acm可好玩了(6) 題解
