Kết nối cơ sở dữ liệu C#: Cách kết nối SQL Server (Ví dụ)

Truy cập dữ liệu từ cơ sở dữ liệu là một trong những khía cạnh quan trọng của bất kỳ ngôn ngữ lập trình nào. Khả năng làm việc với cơ sở dữ liệu là điều hết sức cần thiết đối với bất kỳ ngôn ngữ lập trình nào. C # cũng không khác.

Nó có thể hoạt động với nhiều loại cơ sở dữ liệu khác nhau. Nó có thể hoạt động với các cơ sở dữ liệu phổ biến nhất như Oracle và Microsoft SQL Server.

Nó cũng có thể hoạt động với các dạng cơ sở dữ liệu mới như MongoDB và MySQL.

Nguyên tắc cơ bản của kết nối cơ sở dữ liệu

C# và .Net có thể hoạt động với phần lớn cơ sở dữ liệu, phổ biến nhất là Oracle và Microsoft SQL Server. Nhưng với mọi cơ sở dữ liệu, logic đằng sau việc làm việc với tất cả chúng hầu như giống nhau.

Trong các ví dụ của chúng ta, chúng ta sẽ xem xét việc làm việc Microsoft SQL Server như cơ sở dữ liệu của chúng tôi. Với mục đích học tập, người ta có thể tải xuống và sử dụng Microsoft SQL Server Phiên bản Express, là một phần mềm cơ sở dữ liệu miễn phí được cung cấp bởi Microsoft.

Khi làm việc với cơ sở dữ liệu, sau đây là những khái niệm chung cho tất cả các cơ sở dữ liệu.

  1. Kết nối – Để làm việc với dữ liệu trong cơ sở dữ liệu, bước rõ ràng đầu tiên là kết nối. Kết nối tới cơ sở dữ liệu thường bao gồm các tham số được đề cập dưới đây.
    1. Tên cơ sở dữ liệu hoặc Nguồn dữ liệu – Tham số quan trọng đầu tiên là tên cơ sở dữ liệu mà kết nối cần được thiết lập. Mỗi kết nối chỉ có thể hoạt động với một cơ sở dữ liệu tại một thời điểm.
    2. Credentials – Khía cạnh quan trọng tiếp theo là tên người dùng và mật khẩu cần được sử dụng để thiết lập kết nối với cơ sở dữ liệu. Nó đảm bảo rằng tên người dùng và mật khẩu có các đặc quyền cần thiết để kết nối với cơ sở dữ liệu.
    3. Các thông số tùy chọn – Đối với mỗi loại cơ sở dữ liệu, bạn có thể chỉ định các tham số tùy chọn để cung cấp thêm thông tin về cách .net xử lý kết nối đến cơ sở dữ liệu. Ví dụ: người ta có thể chỉ định tham số về thời gian kết nối sẽ hoạt động. Nếu không có thao tác nào được thực hiện trong một khoảng thời gian cụ thể thì tham số sẽ xác định xem có phải đóng kết nối hay không.
  2. Lựa chọn dữ liệu từ cơ sở dữ liệu – Sau khi kết nối đã được thiết lập, khía cạnh quan trọng tiếp theo là lấy dữ liệu từ cơ sở dữ liệu. C# có thể thực thi lệnh chọn 'SQL' đối với cơ sở dữ liệu. Câu lệnh 'SQL' có thể được sử dụng để tìm nạp dữ liệu từ một bảng cụ thể trong cơ sở dữ liệu.
  3. Chèn dữ liệu vào cơ sở dữ liệu – C# cũng có thể được sử dụng để chèn bản ghi vào cơ sở dữ liệu. Các giá trị có thể được chỉ định trong C# cho mỗi hàng cần được chèn vào cơ sở dữ liệu.
  4. Cập nhật dữ liệu vào cơ sở dữ liệu – C# cũng có thể được sử dụng để cập nhật các bản ghi hiện có vào cơ sở dữ liệu. Các giá trị mới có thể được chỉ định trong C# cho mỗi hàng cần được cập nhật vào cơ sở dữ liệu.
  5. Xóa dữ liệu khỏi cơ sở dữ liệu – C# cũng có thể được sử dụng để xóa các bản ghi vào cơ sở dữ liệu. Các lệnh chọn để chỉ định hàng nào cần xóa có thể được chỉ định trong C#.

Ok, bây giờ chúng ta đã biết lý thuyết của từng thao tác, hãy chuyển sang các phần tiếp theo để xem cách chúng ta có thể thực hiện các thao tác cơ sở dữ liệu trong C#.

Lệnh SQL trong C#

SqlCommand trong C# cho phép người dùng truy vấn và gửi lệnh đến cơ sở dữ liệu. Lệnh SQL được chỉ định bởi đối tượng kết nối SQL. Hai phương pháp được sử dụng, phương thức Thực thiReader cho kết quả truy vấn và Thực thiNonQuery cho các lệnh chèn, Cập nhật và xóa. Đây là phương pháp tốt nhất cho các lệnh khác nhau.

Cách kết nối C# với cơ sở dữ liệu

Bây giờ chúng ta hãy xem đoạn mã cần được giữ nguyên để tạo kết nối tới cơ sở dữ liệu. Trong ví dụ của chúng tôi, chúng tôi sẽ kết nối với cơ sở dữ liệu có tên Demodb. Thông tin đăng nhập được sử dụng để kết nối với cơ sở dữ liệu được đưa ra dưới đây

  • Tên người dùng – sa
  • Mật khẩu – demo123

Chúng ta sẽ thấy một cách đơn giản Windows đơn xin việc để làm việc với cơ sở dữ liệu. Chúng ta sẽ có một nút đơn giản gọi là “Kết nối” sẽ được sử dụng để kết nối với cơ sở dữ liệu.

Vì vậy, hãy làm theo các bước dưới đây để đạt được điều này

Bước 1) Bước đầu tiên liên quan đến việc tạo một dự án mới trong Visual Studio. Sau khi khởi chạy Visual Studio, bạn cần chọn tùy chọn menu New->Project.

Kết nối C# với cơ sở dữ liệu

Bước 2) Bước tiếp theo là chọn loại dự án làm Windows Ứng dụng biểu mẫu. Ở đây, chúng ta cũng cần đề cập đến tên và vị trí của dự án của mình.

Kết nối C# với cơ sở dữ liệu

  1. Trong hộp thoại dự án, chúng ta có thể thấy nhiều tùy chọn khác nhau để tạo các loại dự án khác nhau trong Visual Studio. Nhấp vào Windows tùy chọn ở phía bên trái.
  2. Khi chúng tôi nhấp vào Windows các tùy chọn ở bước trước, chúng ta sẽ có thể thấy một tùy chọn cho Windows Ứng dụng biểu mẫu. Bấm vào tùy chọn này.
  3. Sau đó, chúng tôi đặt tên cho ứng dụng, trong trường hợp của chúng tôi là “DemoApplication”. Chúng tôi cũng cần cung cấp một vị trí để lưu trữ ứng dụng của mình.
  4. Cuối cùng, chúng ta nhấp vào nút 'OK' để cho Visual Studio tạo dự án của chúng ta.

Bước 3) Bây giờ thêm một nút từ hộp công cụ vào Windows hình thức. Đặt thuộc tính văn bản của Nút là Kết nối. Nó sẽ trông như thế này

Kết nối C# với cơ sở dữ liệu

Bước 4) Bây giờ hãy nhấp đúp vào biểu mẫu để thêm trình xử lý sự kiện vào mã cho sự kiện nhấp vào nút. Trong trình xử lý sự kiện, hãy thêm mã bên dưới.

Kết nối C# với cơ sở dữ liệu

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace DemoApplication1
{
 public partial class Form1 : Form
 {
  public Form1()
  {
   InitializeComponent();
  }

  private void button1_Click(object sender, EventArgs e)
  {
   string connetionString;
   SqlConnection cnn;
   connetionString = @"Data Source=WIN-50GP30FGO75;Initial Catalog=Demodb;User ID=sa;Password=demol23";
   cnn = new SqlConnection(connetionString);
   cnn.Open();
   MessageBox.Show("Connection Open  !");
   cnn.Close();
  }
 }
}

Giải thích mã: -

  1. Bước đầu tiên là tạo các biến, các biến này sẽ được sử dụng để tạo chuỗi kết nối và kết nối tới cơ sở dữ liệu SQL Server.
  2. Bước tiếp theo là tạo chuỗi kết nối. Chuỗi kết nối cần được chỉ định chính xác để C# hiểu được chuỗi kết nối. Chuỗi kết nối bao gồm các phần sau
    1. Nguồn dữ liệu - Đây là tên của máy chủ chứa cơ sở dữ liệu. Trong trường hợp của chúng tôi, nó nằm trên một máy có tên WIN-50GP30FGO75.
    2. Danh mục ban đầu được sử dụng để chỉ định tên của cơ sở dữ liệu
    3. UserID và Mật khẩu là thông tin xác thực cần thiết để kết nối với cơ sở dữ liệu.
  3. Tiếp theo, chúng ta gán chuỗi kết nối cho biến cnn. Biến cnn thuộc loại SqlConnection được sử dụng để thiết lập kết nối tới cơ sở dữ liệu.
  4. Tiếp theo, chúng ta sử dụng phương thức Open của biến cnn để mở kết nối tới cơ sở dữ liệu. Sau đó chúng tôi chỉ hiển thị một thông báo cho người dùng rằng kết nối đã được thiết lập.
  5. Sau khi thao tác hoàn tất thành công, chúng tôi sẽ đóng kết nối với cơ sở dữ liệu. Bạn nên đóng kết nối với cơ sở dữ liệu nếu không cần phải làm gì khác trên cơ sở dữ liệu.

Khi mã trên được thiết lập và dự án được thực thi bằng Visual Studio, bạn sẽ nhận được kết quả bên dưới. Khi biểu mẫu được hiển thị, hãy nhấp vào nút Kết nối.

Đầu ra: -

Kết nối C# với cơ sở dữ liệu

Khi bạn nhấp vào nút “connect”, từ đầu ra, bạn có thể thấy kết nối cơ sở dữ liệu đã được thiết lập. Do đó, hộp thông báo đã được hiển thị.

Truy cập dữ liệu bằng SqlDataReader

Để minh họa cách truy cập dữ liệu bằng C#, hãy giả sử rằng chúng ta có các hiện vật sau trong cơ sở dữ liệu.

  1. Một bảng có tên là demotb. Bảng này sẽ được sử dụng để lưu trữ ID và tên của các Hướng dẫn khác nhau.
  2. Bảng sẽ có 2 cột, một cột tên là “TutorialID” và cột còn lại tên là “TutorialName”.
  3. Hiện tại bảng sẽ có 2 hàng như hình dưới đây.
ID hướng dẫn Tên hướng dẫn
1 C#
2 ASP.Net

Hãy thay đổi mã trong biểu mẫu của chúng ta để chúng ta có thể truy vấn dữ liệu này và hiển thị thông tin qua Messagebox. Lưu ý rằng tất cả mã được nhập bên dưới là phần tiếp theo của mã được viết cho kết nối dữ liệu trong phần trước.

Bước 1) Hãy chia mã thành 2 phần để người dùng dễ hiểu.

  • Đầu tiên sẽ là xây dựng câu lệnh “select”, câu lệnh này sẽ được sử dụng để đọc dữ liệu từ cơ sở dữ liệu.
  • Sau đó, chúng tôi sẽ thực thi câu lệnh “select” đối với cơ sở dữ liệu và tìm nạp tất cả các hàng trong bảng tương ứng.

Truy cập dữ liệu bằng SqlDataReader

Giải thích mã: -

  1. Bước đầu tiên là tạo các biến sau
    1. SQLCommand – 'SQLCommand' là một lớp được định nghĩa trong C#. Lớp này được sử dụng để thực hiện các thao tác đọc và ghi vào cơ sở dữ liệu. Do đó, bước đầu tiên là đảm bảo rằng chúng ta tạo một kiểu biến của lớp này. Biến này sau đó sẽ được sử dụng trong các bước đọc dữ liệu tiếp theo từ cơ sở dữ liệu của chúng tôi.
    2. Đối tượng DataReader được sử dụng để lấy tất cả dữ liệu được chỉ định bởi truy vấn SQL. Sau đó, chúng ta có thể đọc từng hàng của bảng bằng trình đọc dữ liệu.
    3. Sau đó, chúng tôi xác định 2 biến chuỗi, một biến là “SQL” để chứa chuỗi lệnh SQL của chúng tôi. Tiếp theo là “Đầu ra” sẽ chứa tất cả các giá trị của bảng.
  2. Bước tiếp theo là xác định câu lệnh SQL, câu lệnh này sẽ được sử dụng dựa trên cơ sở dữ liệu của chúng ta. Trong trường hợp của chúng tôi, đó là “Chọn TutorialID, TutorialName từ demotb”. Điều này sẽ lấy tất cả các hàng từ bảng demotb.
  3. Tiếp theo, chúng ta tạo đối tượng lệnh được sử dụng để thực thi câu lệnh SQL đối với cơ sở dữ liệu. Trong lệnh SQL, bạn phải truyền đối tượng kết nối và chuỗi SQL.
  4. Tiếp theo, chúng ta sẽ thực thi lệnh đọc dữ liệu, lệnh này sẽ tìm nạp tất cả các hàng từ bảng demotb.
  5. Bây giờ chúng ta đã có tất cả các hàng của bảng, chúng ta cần một cơ chế để truy cập từng hàng một. Đối với điều này, chúng tôi sẽ sử dụng câu lệnh while. Câu lệnh while sẽ được sử dụng để truy cập từng hàng từ trình đọc dữ liệu. Sau đó, chúng tôi sử dụng phương thức GetValue để lấy giá trị của TutorialID và TutorialName.

Bước 2) Ở bước cuối cùng, chúng ta sẽ chỉ hiển thị đầu ra cho người dùng và đóng tất cả các đối tượng liên quan đến hoạt động của cơ sở dữ liệu.

Truy cập dữ liệu bằng SqlDataReader

Giải thích mã: -

  1. Chúng ta sẽ tiếp tục mã của mình bằng cách hiển thị giá trị của biến Đầu ra bằng Thông báoBox. Biến đầu ra sẽ chứa tất cả các giá trị từ bảng demotb.
  2. Cuối cùng chúng tôi đóng tất cả các đối tượng liên quan đến hoạt động cơ sở dữ liệu của chúng tôi. Hãy nhớ rằng đây luôn là một thực hành tốt.

Khi mã trên được thiết lập và dự án được chạy bằng Visual Studio, bạn sẽ nhận được kết quả bên dưới. Khi biểu mẫu được hiển thị, hãy nhấp vào nút Kết nối.

Đầu ra: -

Truy cập dữ liệu bằng SqlDataReader

Từ kết quả đầu ra, bạn có thể thấy rõ ràng rằng chương trình có thể lấy được các giá trị từ cơ sở dữ liệu. Dữ liệu sau đó được hiển thị trong hộp thông báo.

C# Chèn vào cơ sở dữ liệu

Giống như Truy cập dữ liệu, C# cũng có khả năng chèn bản ghi vào cơ sở dữ liệu. Để giới thiệu cách chèn bản ghi vào cơ sở dữ liệu của chúng ta, hãy sử dụng cấu trúc bảng tương tự đã được sử dụng ở trên.

ID hướng dẫn Tên hướng dẫn
1 C#
2 ASP.Net

Hãy thay đổi mã trong biểu mẫu của chúng ta để có thể chèn hàng sau vào bảng

ID hướng dẫn Tên hướng dẫn
3 VB.Net

Vậy hãy thêm đoạn mã sau vào chương trình của chúng ta. Đoạn mã dưới đây sẽ được sử dụng để chèn một bản ghi hiện có vào cơ sở dữ liệu của chúng ta.

C# Chèn vào cơ sở dữ liệu

Giải thích mã: -

  1. Bước đầu tiên là tạo các biến sau
    1. SQLCommand – Kiểu dữ liệu này được sử dụng để xác định các đối tượng được sử dụng để thực hiện các hoạt động SQL đối với cơ sở dữ liệu. Đối tượng này sẽ giữ lệnh SQL chạy trên cơ sở dữ liệu SQL Server của chúng tôi.
    2. Đối tượng DataAdapter được sử dụng để thực hiện các hoạt động SQL cụ thể như các lệnh chèn, xóa và cập nhật.
    3. Sau đó, chúng tôi xác định một biến chuỗi, đó là “SQL” để chứa chuỗi lệnh SQL của chúng tôi.
  2. Bước tiếp theo là xác định câu lệnh SQL sẽ được sử dụng đối với cơ sở dữ liệu của chúng ta. Trong trường hợp của chúng tôi, chúng tôi đang đưa ra một câu lệnh chèn, câu lệnh này sẽ chèn bản ghi của TutorialID=1 và TutorialName=VB.Net
  3. Tiếp theo, chúng ta tạo đối tượng lệnh được sử dụng để thực thi câu lệnh SQL đối với cơ sở dữ liệu. Trong lệnh SQL, bạn phải truyền đối tượng kết nối và chuỗi SQL
  4. Trong lệnh bộ điều hợp dữ liệu, bây giờ chúng tôi liên kết lệnh chèn SQL với bộ điều hợp của mình. Sau đó, chúng tôi cũng đưa ra phương thức Thực thiNonQuery được sử dụng để thực thi câu lệnh Chèn đối với cơ sở dữ liệu của chúng tôi. Phương thức 'ExecuteNonQuery' được sử dụng trong C# để đưa ra bất kỳ câu lệnh DML nào đối với cơ sở dữ liệu. Theo các câu lệnh DML, chúng tôi muốn nói đến thao tác chèn, xóa và cập nhật. Trong C#, nếu bạn muốn đưa ra bất kỳ câu lệnh nào trong số này đối với một bảng, bạn cần sử dụng phương thức Thực thiNonQuery.
  5. Cuối cùng chúng tôi đóng tất cả các đối tượng liên quan đến hoạt động cơ sở dữ liệu của chúng tôi. Hãy nhớ rằng đây luôn là một thực hành tốt.

Khi mã trên được thiết lập và dự án được thực thi bằng Visual Studio, bạn sẽ nhận được kết quả bên dưới. Khi biểu mẫu được hiển thị, hãy nhấp vào nút Kết nối.

Đầu ra: -

C# Chèn vào cơ sở dữ liệu

Nếu các bạn vào SQL Server Express và nhìn thấy các hàng trong bảng demotb sẽ thấy các hàng được chèn như hình bên dưới

C# Chèn vào cơ sở dữ liệu

Cơ sở dữ liệu cập nhật C#

Giống như Truy cập dữ liệu, C# cũng có khả năng cập nhật các bản ghi hiện có từ cơ sở dữ liệu. Để giới thiệu cách cập nhật bản ghi vào cơ sở dữ liệu của chúng tôi, hãy sử dụng cấu trúc bảng tương tự đã được sử dụng ở trên.

ID hướng dẫn Tên hướng dẫn
1 C#
2 ASP.Net
3 VB.Net

Hãy thay đổi mã trong biểu mẫu của chúng ta để chúng ta có thể cập nhật hàng sau. Giá trị hàng cũ là TutorialID là “3” và Tutorial Name là “VB.Net”. Chúng ta sẽ cập nhật nó thành “VB.Net complete” trong khi giá trị hàng cho Tutorial ID sẽ vẫn giữ nguyên.

Hàng cũ

ID hướng dẫn Tên hướng dẫn
3 VB.Net

Hàng mới

ID hướng dẫn Tên hướng dẫn
3 VB.Net hoàn thiện

Vậy hãy thêm đoạn mã sau vào chương trình của chúng ta. Đoạn mã dưới đây sẽ được sử dụng để cập nhật bản ghi hiện có trong cơ sở dữ liệu của chúng ta.

Cơ sở dữ liệu cập nhật C#

Ví dụ về C# SqlCommand với Giải thích mã: -

  1. Bước đầu tiên là tạo các biến sau
    1. SQLCommand – Kiểu dữ liệu này được sử dụng để xác định các đối tượng được sử dụng để thực hiện các hoạt động SQL đối với cơ sở dữ liệu. Đối tượng này sẽ giữ lệnh SQL chạy trên cơ sở dữ liệu SQL Server của chúng tôi.
    2. Đối tượng dataadapter được sử dụng để thực hiện các hoạt động SQL cụ thể như các lệnh chèn, xóa và cập nhật.
    3. Sau đó, chúng tôi xác định một biến chuỗi, đó là SQL để chứa chuỗi lệnh SQL của chúng tôi.
  2. Bước tiếp theo là xác định câu lệnh SQL sẽ được sử dụng đối với cơ sở dữ liệu của chúng tôi. Trong trường hợp của chúng tôi, chúng tôi đang đưa ra một tuyên bố cập nhật, điều này sẽ cập nhật tên Hướng dẫn thành “VB.Net Complete” trong khi TutorialID không thay đổi và được giữ là 3.
  3. Tiếp theo, chúng ta sẽ tạo đối tượng lệnh, đối tượng này được sử dụng để thực thi câu lệnh SQL đối với cơ sở dữ liệu. Trong lệnh SQL, bạn đã truyền đối tượng kết nối và chuỗi SQL.
  4. Trong lệnh bộ điều hợp dữ liệu, bây giờ chúng tôi liên kết lệnh chèn SQL với bộ điều hợp của mình. Sau đó, chúng tôi cũng đưa ra phương thức Thực thiNonQuery được sử dụng để thực thi câu lệnh Cập nhật đối với cơ sở dữ liệu của chúng tôi.
  5. Cuối cùng chúng tôi đóng tất cả các đối tượng liên quan đến hoạt động cơ sở dữ liệu của chúng tôi. Hãy nhớ rằng đây luôn là một thực hành tốt.

Khi mã trên được thiết lập và dự án được thực thi bằng Visual Studio, bạn sẽ nhận được kết quả bên dưới. Khi biểu mẫu được hiển thị, hãy nhấp vào nút Kết nối.

Đầu ra: -

Cơ sở dữ liệu cập nhật C#

Nếu thực tế bạn vào SQL Server Express và xem các hàng trong bảng demotb, bạn sẽ thấy hàng đã được cập nhật thành công như hình bên dưới.

Cơ sở dữ liệu cập nhật C#

Xóa hồ sơ

Giống như Truy cập dữ liệu, C# cũng có khả năng xóa các bản ghi hiện có khỏi cơ sở dữ liệu. Để giới thiệu cách xóa bản ghi vào cơ sở dữ liệu của chúng ta, hãy sử dụng cấu trúc bảng tương tự đã được sử dụng ở trên.

ID hướng dẫn Tên hướng dẫn
1 C#
2 ASP.Net
3 VB.Net hoàn thiện

Hãy thay đổi mã trong biểu mẫu của chúng ta để có thể xóa hàng sau

ID hướng dẫn Tên hướng dẫn
3 VB.Net hoàn thiện

Vậy hãy thêm đoạn mã sau vào chương trình của chúng ta. Đoạn mã dưới đây sẽ được sử dụng để xóa một bản ghi hiện có trong cơ sở dữ liệu của chúng ta.

Xóa hồ sơ

Giải thích mã: -

  1. Sự khác biệt chính trong mã này là chúng tôi hiện đang đưa ra câu lệnh SQL xóa. Câu lệnh xóa được sử dụng để xóa hàng trong bảng demotb trong đó TutorialID có giá trị là 3.
  2. Trong lệnh bộ điều hợp dữ liệu, bây giờ chúng tôi liên kết lệnh chèn SQL với bộ điều hợp của mình. Sau đó, chúng tôi cũng đưa ra phương thức Thực thiNonQuery được sử dụng để thực thi câu lệnh Xóa đối với cơ sở dữ liệu của chúng tôi.

Khi mã trên được thiết lập và dự án được thực thi bằng Visual Studio, bạn sẽ nhận được kết quả bên dưới. Khi biểu mẫu được hiển thị, hãy nhấp vào nút Kết nối.

Đầu ra: -

Xóa hồ sơ

Nếu thực tế bạn vào SQL Server Express và xem các hàng trong bảng demotb sẽ thấy hàng đó đã được xóa thành công như hình bên dưới.

Xóa hồ sơ

Kết nối điều khiển với dữ liệu

Trong các phần trước, chúng ta đã thấy cách sử dụng các lệnh C# như SQLCommand và SQLReader để lấy dữ liệu từ cơ sở dữ liệu. Chúng ta cũng đã thấy cách đọc từng hàng của bảng và sử dụng hộp thông báo để hiển thị nội dung của bảng cho người dùng.

Nhưng rõ ràng là người dùng không muốn xem dữ liệu được gửi qua hộp tin nhắn và muốn có các điều khiển tốt hơn để hiển thị dữ liệu. Hãy lấy cấu trúc dữ liệu bên dưới trong một bảng

ID hướng dẫn Tên hướng dẫn
1 C#
2 ASP.Net
3 VB.Net hoàn thiện

Từ cấu trúc dữ liệu trên, lý tưởng nhất là người dùng muốn thấy TutorialID và Tutorial Name được hiển thị trong hộp văn bản. Thứ hai, họ có thể muốn có một số loại nút điều khiển cho phép họ chuyển đến bản ghi tiếp theo hoặc bản ghi trước đó trong bảng. Điều này sẽ yêu cầu một chút mã hóa bổ sung từ phía nhà phát triển.

Tin tốt là C# có thể giảm bớt nỗ lực mã hóa bổ sung bằng cách cho phép liên kết các điều khiển với dữ liệu. Điều này có nghĩa là C# có thể tự động điền giá trị của hộp văn bản theo một trường cụ thể của bảng.

Vì vậy, bạn có thể có 2 hộp văn bản trong một biểu mẫu Windows. Sau đó, bạn có thể liên kết một hộp văn bản với trường TutorialID và một hộp văn bản khác với trường TutorialName. Việc liên kết này được thực hiện trong chính trình thiết kế Visual Studio và bạn không cần phải viết thêm mã cho việc này.

Visual Studio sẽ đảm bảo rằng nó viết mã cho bạn để đảm bảo liên kết hoạt động. Sau đó, khi bạn chạy ứng dụng của mình, các điều khiển hộp văn bản sẽ tự động kết nối với cơ sở dữ liệu, lấy dữ liệu và hiển thị dữ liệu trong các điều khiển hộp văn bản. Không cần phải lập trình từ phía nhà phát triển để đạt được điều này.

Hãy xem một ví dụ về mã về cách chúng ta có thể đạt được sự ràng buộc của các điều khiển.

Trong ví dụ của chúng tôi, chúng tôi sẽ tạo 2 hộp văn bản trên biểu mẫu windows. Chúng sẽ lần lượt đại diện cho Tutorial ID và Tutorial Name. Chúng sẽ được liên kết với các trường Tutorial ID và TutorialName của cơ sở dữ liệu tương ứng.

Hãy làm theo các bước được đề cập dưới đây để đạt được điều này.

Bước 1) Xây dựng biểu mẫu cơ bản. Trong biểu mẫu kéo và thả 2 thành phần - nhãn và hộp văn bản. Sau đó thực hiện các bước phụ sau

  1. Đặt giá trị văn bản của nhãn đầu tiên là TutorialID
  2. Đặt giá trị văn bản của nhãn thứ hai là TutorialName
  3. Đặt thuộc tính tên của hộp văn bản đầu tiên là txtID
  4. Đặt thuộc tính tên của hộp văn bản thứ hai là txtName

Dưới đây là hình thức của biểu mẫu sau khi thực hiện các bước nêu trên.

Kết nối điều khiển với dữ liệu

Bước 2) Bước tiếp theo là thêm một binding Navigator vào biểu mẫu. Điều khiển binding Navigator có thể tự động điều hướng qua từng hàng của bảng. Để thêm binding navigator, chỉ cần vào hộp công cụ và kéo nó vào biểu mẫu.

Kết nối điều khiển với dữ liệu

Bước 3) Bước tiếp theo là thêm liên kết vào cơ sở dữ liệu của chúng ta. Điều này có thể được thực hiện bằng cách đi đến bất kỳ điều khiển Textbox nào và nhấp vào thuộc tính DataBindings->Text. Binding Navigator được sử dụng để thiết lập liên kết từ ứng dụng của bạn đến cơ sở dữ liệu.

Khi bạn thực hiện bước này, Visual Studio sẽ tự động thêm mã cần thiết vào ứng dụng để đảm bảo ứng dụng được liên kết với cơ sở dữ liệu. Thông thường, cơ sở dữ liệu trong Visual Studio được gọi là Nguồn dữ liệu dự án. Vì vậy, để đảm bảo kết nối được thiết lập giữa ứng dụng và cơ sở dữ liệu, bước đầu tiên là tạo nguồn dữ liệu dự án.

Màn hình sau sẽ hiển thị. Nhấp vào liên kết- “Thêm nguồn dữ liệu dự án”. Khi bạn nhấp vào nguồn dữ liệu dự án, bạn sẽ thấy trình hướng dẫn; trình hướng dẫn này sẽ cho phép bạn xác định kết nối cơ sở dữ liệu.

Kết nối điều khiển với dữ liệu

Bước 4) Khi bạn nhấp vào liên kết Thêm nguồn dữ liệu dự án, bạn sẽ thấy trình hướng dẫn được sử dụng để tạo kết nối đến cơ sở dữ liệu demotb. Các bước sau đây trình bày chi tiết những gì cần được cấu hình trong từng bước của trình hướng dẫn.

  1. Trong màn hình bật lên, chọn loại Nguồn dữ liệu là Cơ sở dữ liệu và sau đó nhấp vào nút tiếp theo.

Kết nối điều khiển với dữ liệu

  1. Trong màn hình tiếp theo, bạn cần bắt đầu tạo chuỗi kết nối tới cơ sở dữ liệu. Chuỗi kết nối là cần thiết để ứng dụng thiết lập kết nối với cơ sở dữ liệu. Nó chứa các tham số như tên máy chủ, tên cơ sở dữ liệu và tên của trình điều khiển.
    1. Nhấp vào nút Kết nối mới
    2. Chọn Nguồn dữ liệu làm Microsoft SQL Server
    3. Nhấp vào nút Tiếp tục.

Kết nối điều khiển với dữ liệu

  1. Tiếp theo, bạn cần thêm thông tin đăng nhập để kết nối với cơ sở dữ liệu
    1. Chọn tên máy chủ chứa SQL Server
    2. Nhập id người dùng và mật khẩu để kết nối với cơ sở dữ liệu
    3. Chọn cơ sở dữ liệu là demotb
    4. Nhấp vào nút 'ok'.

Kết nối điều khiển với dữ liệu

  1. Trong màn hình này, chúng tôi sẽ xác nhận tất cả các cài đặt được thực hiện trên các màn hình trước đó.
    1. Chọn tùy chọn “Có” để đưa dữ liệu nhạy cảm vào chuỗi kết nối
    2. Nhấp vào nút "Tiếp theo".

Kết nối điều khiển với dữ liệu

  1. Trong màn hình tiếp theo, nhấp vào nút “Tiếp theo” để xác nhận việc tạo chuỗi kết nối

Kết nối điều khiển với dữ liệu

  1. Trong bước này,
  1. Chọn các bảng của Demotb, bảng này sẽ được hiển thị trong màn hình tiếp theo.
  2. Bảng này bây giờ sẽ trở thành nguồn dữ liệu có sẵn trong dự án C#

Kết nối điều khiển với dữ liệu

Khi bạn nhấp vào nút Kết thúc, Visual Studio bây giờ sẽ đảm bảo rằng ứng dụng có thể truy vấn tất cả các hàng trong bảng Demotb.

Bước 5) Bây giờ nguồn dữ liệu đã được xác định, chúng ta cần kết nối hộp văn bản TutorialID và TutorialName với bảng demotb. Khi bạn nhấp vào thuộc tính Text của hộp văn bản TutorialID hoặc TutorialName, bạn sẽ thấy nguồn liên kết với Demotb khả dụng.

Đối với hộp văn bản đầu tiên, hãy chọn Tutorial ID. Lặp lại bước này cho hộp văn bản thứ hai và chọn trường là TutorialName. Các bước bên dưới cho thấy cách chúng ta có thể điều hướng đến từng điều khiển và thay đổi ràng buộc cho phù hợp.

  1. Nhấp vào điều khiển ID hướng dẫn.

Kết nối điều khiển với dữ liệu

  1. Trong cửa sổ Properties, bạn sẽ thấy các thuộc tính của hộp văn bản TutorialID. Đi đến thuộc tính văn bản và nhấp vào nút mũi tên xuống.

Kết nối điều khiển với dữ liệu

  1. Khi bạn nhấp vào nút mũi tên xuống, bạn sẽ thấy tùy chọn Nguồn demotbBinding. Và bên dưới, bạn sẽ thấy các tùy chọn TutorialName và TutorialID. Chọn một ID hướng dẫn.

Kết nối điều khiển với dữ liệu

Lặp lại 3 bước trên cho hộp văn bản Tên hướng dẫn.

  1. Vì vậy, hãy nhấp vào hộp văn bản Tên hướng dẫn
  2. Đi tới cửa sổ thuộc tính
  3. Chọn thuộc tính Văn bản
  4. Chọn tùy chọn TutorialName trong demotbBindingSource

Bước 6) Tiếp theo, chúng ta cần thay đổi thuộc tính Binding Source của BindingNavigator để trỏ đến nguồn dữ liệu Demotb. Lý do chúng ta làm điều này là vì Binding Navigator cũng cần biết nó cần tham chiếu đến bảng nào.

Binding Navigator được sử dụng để chọn bản ghi tiếp theo hoặc trước đó trong bảng. Vì vậy, mặc dù nguồn dữ liệu được thêm vào toàn bộ dự án và vào điều khiển hộp văn bản, chúng ta vẫn cần đảm bảo Binding Navigator cũng có liên kết đến nguồn dữ liệu của chúng ta. Để thực hiện việc này, chúng ta cần nhấp vào đối tượng Binding navigator, đi đến thuộc tính Binding Source và chọn đối tượng có sẵn

Kết nối điều khiển với dữ liệu

Tiếp theo, chúng ta cần vào cửa sổ Thuộc tính để có thể thực hiện thay đổi đối với thuộc tính Binding Source.

Kết nối điều khiển với dữ liệu

Khi tất cả các bước trên được thực hiện thành công, bạn sẽ nhận được kết quả đầu ra được đề cập bên dưới.

Đầu ra: -

Kết nối điều khiển với dữ liệu

Bây giờ khi dự án được khởi chạy, bạn có thể thấy các hộp văn bản tự động lấy các giá trị từ bảng.

Kết nối điều khiển với dữ liệu

Khi bạn nhấp vào nút Tiếp theo trên Trình điều hướng, nó sẽ tự động chuyển đến bản ghi tiếp theo trong bảng. Và các giá trị của bản ghi tiếp theo sẽ tự động xuất hiện trong các hộp văn bản

C# DataGridView

Lưới dữ liệu được sử dụng để hiển thị dữ liệu từ một bảng ở định dạng giống như lưới. Khi người dùng xem dữ liệu bảng, họ thường thích xem tất cả các hàng của bảng trong một lần chụp. Điều này có thể đạt được nếu chúng ta có thể hiển thị dữ liệu dưới dạng lưới trên biểu mẫu.

C# và Visual Studio có lưới dữ liệu tích hợp, có thể sử dụng để hiển thị dữ liệu. Chúng ta hãy xem một ví dụ về điều này. Trong ví dụ của chúng ta, chúng ta sẽ có một lưới dữ liệu, được sử dụng để hiển thị các giá trị ID hướng dẫn và Tên hướng dẫn từ bảng demotb.

Bước 1) Kéo điều khiển DataGridView từ hộp công cụ vào Form trong Visual Studio. Điều khiển DataGridView được sử dụng trong Visual Studio để hiển thị các hàng của bảng theo định dạng dạng lưới.

C# DataGridView

Bước 2) Trong bước tiếp theo, chúng ta cần kết nối lưới dữ liệu của mình với cơ sở dữ liệu. Trong phần trước, chúng tôi đã tạo nguồn dữ liệu dự án. Hãy sử dụng cùng một nguồn dữ liệu trong ví dụ của chúng tôi.

  1. Đầu tiên bạn cần chọn lưới và click vào mũi tên trong lưới. Thao tác này sẽ hiển thị các tùy chọn cấu hình lưới.
  2. Trong các tùy chọn cấu hình, chỉ cần chọn nguồn dữ liệu là demotbBindingSource, nguồn dữ liệu đã được tạo trong phần trước.

C# DataGridView

Nếu tất cả các bước trên được thực hiện như được hiển thị, bạn sẽ nhận được kết quả được đề cập bên dưới.

Đầu ra: -

C# DataGridView

Từ kết quả đầu ra, bạn có thể thấy rằng lưới đã được điền bởi các giá trị từ cơ sở dữ liệu.

Tổng kết

  • C# SQL có thể hoạt động với các cơ sở dữ liệu như Oracle và Microsoft SQL Server.
  • Hướng dẫn cơ sở dữ liệu C# này có tất cả các lệnh cần thiết để làm việc với cơ sở dữ liệu. Điều này liên quan đến việc thiết lập kết nối tới cơ sở dữ liệu. Bạn có thể thực hiện các thao tác như chọn, cập nhật, chèn và xóa bằng các lệnh trong C#.
  • Đối tượng DataReader trong C# được sử dụng để chứa tất cả dữ liệu được cơ sở dữ liệu trả về. Vòng lặp While trong C# có thể được sử dụng để đọc từng hàng dữ liệu một.
  • Đối tượng bộ điều hợp dữ liệu được sử dụng để thực hiện các thao tác SQL như chèn, xóa và cập nhật cơ sở dữ liệu.
  • C# có thể liên kết các điều khiển với các trường khác nhau trong bảng. Chúng bị ràng buộc bằng cách xác định nguồn dữ liệu trong C#. Nguồn dữ liệu được sử dụng để lấy dữ liệu từ cơ sở dữ liệu và đưa chúng vào các điều khiển.
  • Trình điều hướng liên kết được sử dụng để tự động điều hướng qua các hàng trong bảng.
  • Lưới dữ liệu trong C# có thể kết nối với cơ sở dữ liệu và hiển thị tất cả các giá trị từ bảng ở định dạng giống như lưới.

Tìm hiểu thêm về PNV Xem tiếp