使用 Visual Studio 在 .NET Framework 應用程式中建立資料庫並新增數據表
注意
數據集和相關類別是 2000 年代初的舊版 .NET Framework 技術,可讓應用程式在應用程式與資料庫中斷連線時使用記憶體中的數據。 這些技術特別適用於可讓使用者修改數據並將變更保存回資料庫的應用程式。 雖然數據集已證明是非常成功的技術,但建議新的 .NET 應用程式使用 Entity Framework Core。 Entity Framework 提供更自然的方式,以表格式數據作為物件模型使用,而且具有更簡單的程序設計介面。
您可以使用 Visual Studio 在 SQL Server Express LocalDB 中建立及更新本機資料庫檔案。 您也可以在 Visual Studio 中 SQL Server 物件總管 工具視窗中執行 Transact-SQL 語句來建立資料庫。 在本主題中,您會使用數據表設計工具建立 .mdf
檔案,並新增數據表和索引鍵。
先決條件
若要完成本逐步解說,您需要在 Visual Studio 中安裝 .NET 桌面開發 和 資料儲存和處理 工作負載。 若要安裝它們,請打開 Visual Studio Installer,然後選擇您想要修改的 Visual Studio 版本旁的 [修改](或 [其他>修改])。 請參閱 修改 Visual Studio。
注意
本文中的程式僅適用於 .NET Framework Windows Forms 專案,不適用於 .NET Core Windows Forms 專案。
建立專案和本機資料庫檔案
建立新的 Windows Forms 應用程式 (.NET Framework) 專案,並將它命名 SampleDatabaseWalkthrough。
在功能表列上,選取 [專案]>[新增項目]。 如果您看到具有檔案名方塊的小型對話框,請選擇 [顯示所有範本。
在專案範本清單中,向下捲動並選取 以服務為基礎的資料庫。
將資料庫命名為 SampleDatabase.mdf,然後選取 新增。
新增數據源
如果未開啟 [數據源] 視窗,請在功能表欄上按 Shift+Alt+D,或選取 [檢視>其他 Windows>數據源] 來開啟它。
在 [數據源] 視窗中,選取 [[新增數據源]。
中新增數據源
中新增數據源
數據源設定精靈 隨即開啟。
在 [選擇資料源類型] 頁面上,選擇 [資料庫],然後選擇 [下一步]。
在 [選擇資料庫模型] 頁面上,選擇 下一步 來接受預設值(資料集)。
在 [選擇您的數據連線] 頁面上,從下拉式清單中選取 SampleDatabase.mdf 檔案,然後選擇 [下一步]。
在 [[將連接字串儲存至應用程式組態檔] 頁面上,選擇 [下一步]。
在 [選擇您的資料庫物件 頁面上,您會看到一則訊息,指出資料庫不包含任何物件。 選擇 完成。
謹慎
在實際的應用程式中,您應該安全地儲存連接字串,如 連接字串和組態檔中所述,。 為了獲得最佳安全性,請使用不依賴將密碼儲存在連接字串中的驗證方法,例如內部部署 SQL Server 資料庫的 Windows 驗證。 請參閱 儲存與編輯連接字串。
檢視數據連線的屬性
您可以開啟資料連線 [屬性] 視窗,以檢視 SampleDatabase.mdf 檔案的某些屬性:
選取 [檢視>SQL Server 物件總管] [或 Ctrl+\]、[Ctrl+S] 來開啟 [SQL Server 物件總管] 視窗。 展開 (localdb)\MSSQLLocalDB>Databases,然後以滑鼠右鍵單擊 SampleDatabase.mdf(可能列為完整路徑),然後選取 屬性。
或者,如果該視窗尚未開啟,您可以選取 [檢視]>[伺服器總管]。 展開 [數據連線] 節點,以滑鼠右鍵按兩下 [SampleDatabase.mdf],然後 選取 [屬性],以開啟 [屬性] 視窗。
提示
如果您無法展開 [資料連線] 節點,或未列出 SampleDatabase.mdf 連線,請在 [伺服器總管] 工具列中選取 [連線到資料庫] 按鈕。 在 [新增連線] 對話框中,確定已選取 [數據源] 底下的 [Microsoft SQL Server 資料庫 檔案],然後流覽至並選取SampleDatabase.mdf檔案。 選取 [確定]來完成新增連線。
若要檢視連接字串,您可以在 [方案總管] 中開啟 App.config 檔案。 您應該會在 connectionStrings
元素下看到類似以下程式碼的條目:
<connectionStrings>
<add name="SampleDatabaseWalkthrough.Properties.Settings.SampleDatabaseConnectionString"
connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SampleDatabase.mdf;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
使用資料表設計器建立資料表和索引鍵
在本節中,您會建立兩個數據表、每個數據表中的主鍵,以及一些範例數據列。 您也會建立外鍵,以指定某個數據表中的記錄如何對應至另一個數據表中的記錄。
建立 Customers 數據表
在 Server Explorer 或 SQL Server 物件瀏覽器中,展開 [數據連線] 節點,然後展開 [SampleDatabase.mdf] 節點。
以滑鼠右鍵按下 資料表,然後選取 新增資料表。
[數據表設計工具] 隨即開啟,並顯示具有一個預設數據列的方格,代表您要建立之數據表中的單一數據行。 藉由將列新增至方格,可以在表格中新增欄。
在方格中,為每個下列項目新增一列:
欄位名稱 數據類型 允許空值 CustomerID
nchar(5)
錯誤(已清除) CompanyName
nvarchar(50)
錯誤(已清除) ContactName
nvarchar (50)
正確(已選取) Phone
nvarchar (24)
True (已選取) 使用滑鼠右鍵點擊
CustomerID
行,然後選擇 [設定主鍵]。以滑鼠右鍵點擊預設資料列(
Id
),然後選取 刪除。藉由更新腳本窗格中的第一行來命名 Customers 數據表,以符合下列範例:
CREATE TABLE [dbo].[Customers]
將索引條件約束新增至 Customers 數據表。 在
Phone
行結尾新增逗號,然後在右括弧之前新增下列範例:CONSTRAINT [PK_Customers] PRIMARY KEY ([CustomerID])
您應該會看到類似如下的內容:
在 表格設計器的左上角,選取 [Update],或按 Shift+Alt+U。
在 [預覽資料庫更新] 對話框中,選取 [更新資料庫]。
Customers 數據表是在本機資料庫檔案中建立的。
建立訂單數據表
新增另一個數據表,然後為下表中的每個條目新增一行:
欄位名稱 數據類型 允許空值 OrderID
int
False (已清除) CustomerID
nchar(5)
錯誤(已清除) OrderDate
datetime
True (已選取) OrderQuantity
int
True (已選取) 將 OrderID 設定為主鍵,然後刪除預設數據列。
藉由更新文本窗格中的第一行來命名 Orders 數據表,以符合下列範例:
CREATE TABLE [dbo].[Orders]
將索引條件約束新增至 Customers 數據表。 在
OrderQuantity
行結尾新增逗號,然後在右括弧之前新增下列範例:CONSTRAINT [PK_Orders] PRIMARY KEY ([OrderId])
在 資料表設計工具左上角,選取 [更新],或按 Shift+Alt+U。
在 [預覽資料庫更新] 對話框中,選取 [更新資料庫]。
Orders 資料表是在本機資料庫檔案中建立的。 如果您在 [伺服器總管]中展開 [數據表] 節點,您會看到這兩個數據表:
在 [伺服器總管] 中展開的 [數據表] 節點
在 [伺服器總管]
如果您沒有看到,請按工具列上的 [[重新整理] 按鈕。
建立外鍵
在 Orders 資料表的 [資料表設計工具] 方格右側的內容窗格中,右鍵點擊 [外鍵],然後選取 新增外鍵。
在出現的文字框中,將文字 ToTable 取代為 Customers。
在 [T-SQL] 窗格中,更新最後一行以符合下列範例:
CONSTRAINT [FK_Orders_Customers] FOREIGN KEY ([CustomerID]) REFERENCES [Customers]([CustomerID])
在 表格設計器左上角,選擇 [Update](Shift+Alt+U)。
在 [預覽資料庫更新] 對話框中,選取 [更新資料庫]。
已建立外鍵。
將數據填入表格
在 Server Explorer 或 SQL Server 物件總管中,展開範例資料庫的節點。
開啟 [數據表] 節點的快捷方式功能表,選取 [重新整理],然後展開 [數據表] 節點。
開啟 Customers 資料表的快捷方式選單,然後選取 [顯示資料表資料] 或 [檢視資料]。
為某些客戶新增您想要的任何數據。
您可以將您想要的任何五個字元指定為客戶識別碼,但請選擇至少一個您可以記得在此程式中稍後使用的字元。
開啟 Orders 資料表的快捷方式選單,然後選取 [顯示資料表資料] 或 [檢視資料]。
新增某些訂單的數據。 當您輸入每個數據列時,它會儲存在資料庫中。
重要
請確定所有訂單標識碼和訂單數量都是整數,而且每個客戶標識碼都符合您在 Customers 數據表的 CustomerID 數據行中指定的值。
祝賀! 您現在知道如何建立數據表、使用外鍵鏈接數據表,以及新增數據。
相關內容
- 在 Visual Studio 中存取數據