ADO.NET
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Thao tác SQL Server với C# [ADO.NET]

Trong bài viết này chúng ta sẽ cùng nhau tìm hiểu về ADO.NET sử dụng cơ sở dữ liệu SQL Server. Ở đây các bạn sẽ hiểu được cách kết nối với CSDL SQL Server và các thao tác cơ bản với CSDL bằng ADO.NET.

Để có thể thực hiện được, các bạn cần cài đặt SQL Server trên máy tính của mình (cách cài đặt trên google). Hiện tại thì mình đang sử dụng công cụ SQL Server Management Studio (SSMS) để tương tác với SQL Server.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

1. Mở SQL Server Management Studio Tool

Khi các bạn mở SSMS (SQL Server Management Studio), nó sẽ đưa bạn tới cửa sổ để kết nối với máy chủ. Tại đây, các bạn cần cung cấp tên máy chủ và các thông tin xác thực và nhấn nút Connect để kết nối như hình dưới đây.

bai2 01 PNG

Khi bạn đã kết nối thành công thì giao diện của SQL Server Management Studio sẽ như hình. Ở dây mình đang sử dụng SSMS với phiên bản 2012, các bạn có thể cài đặt phiên bản mới nhất để sử dụng hết các tính năng của nó.

bai2 02 PNG

2. Tạo cơ sở dữ liệu trong SQL Server

Để tạo mới database bằng GUI trên SSMS, đầu tiên các bạn nhấp chuột phải vào Databases tại mục Object Explorer ở góc bên trái. Khi đó một cửa sổ menu hiện lên, các bạn chọn vào New Database như hình dưới đây để tạo mới một database.

bai2 03 PNG

Sau khi chọn New Database một cửa sổ mới sẽ mở ra. Tại đây, các bạn cần cung cấp tên database và nhấn vào nút OK. Mình đã đặt tên cho database là Students, các bạn có thể đặt tùy ý theo project để dễ quản lý.

bai2 04 png

Khi tạo xong thì database của chúng ta sẽ nằm ở bên trong Databases ở mục Object Explorer.

bai2 05 png

3. Thiết lập kết nối và tạo bảng

Khi chúng ta đã tạo xong database Students trong SSMS, bây giờ sẽ tạo một bảng mới có tên là Student bằng cách sử dụng ADO.NET và code C#.

Đầu tiên các bạn cần mở Visual studio 2019 (các bạn có thể sử dụng bất kỳ phiên bản nào của visual studio). Sau đó tạo một project .NET Console Application và đặt tên cho project ta sẽ được hình như dưới đây.

bai2 06 PNG

Bây giờ chúng ta sẽ đi tạo chuỗi kết nối tới SQL Server bằng file App.config, cụ thể như sau:

Bước 1: Nhấn đúp chuột vào file App.config ở mục Solution Explorer để mở file.

Bước 2: Thêm đoạn code tạo chuỗi kết nối vào file, sau đó lưu lại.

bai2 07 PNG

Bước 3: Thêm thư viện Configuration vào project bằng cách chuột phải vào References và chọn Add Reference.

bai2 08 PNG

Sau đó kéo xuống bên dưới và tích vào ô System.Configuration để thêm thư viện này vào project.

bai2 09 png

Sau khi thực hiện các bước trên, bây giờ chỉ cần viết code để gọi chuỗi kết nối từ file App.config và kết nối tới SQL Server.

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            //gọi hàm CreateTable để tạo mới Table
            new Program().CreateTable();
            Console.ReadKey();
        }
        public void CreateTable()
        {
            //sử dụng lớp SqlConnection để tạo chuỗi kết nối
            SqlConnection con = new SqlConnection();
            //gọi chuỗi kết nối ở file App.config bằng thuộc tính ConfigurationManager trong lớp System.Configuration
            con.ConnectionString = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
            try
            {
                // viết câu lệnh query để thêm mới bảng với các thuộc tính name, email, join_date
                SqlCommand cm = new SqlCommand("create table student(id int not null, name varchar(100), email varchar(50), join_date date)", con);
                // mở chuỗi kết nối
                con.Open();
                // sử dụng phương thức ExecuteNonQuery() để thực thi câu lệnh
                cm.ExecuteNonQuery();
                // thông báo ra màn hình khi tạo thành công
                Console.WriteLine("Đã tạo mới bảng thành công");
            }
            catch (Exception e)
            {
                Console.WriteLine("Có lỗi xảy ra !!!" + e);
            }
            // dóng chuỗi kết nối
            finally
            {
                con.Close();
            }
        }
    }
}

Kết quả:

bai2 10 png

Lúc này tại SSMS thì bảng student cũng được tạo trong database Students.

bai2 11 PNG

4. Thêm dữ liệu vào SQL Server bằng ADO.NET

Tương tư, ta cũng có thể thêm dữ liệu vào trong bảng vừa được tạo ở trên, bằng cách thêm đoạn code dưới đây:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            //gọi hàm Insert để thêm mới dữ liệu vào Table
            new Program().Insert();
            Console.ReadKey();
        }
        public void Insert()
        {
            //sử dụng lớp SqlConnection để tạo chuỗi kết nối
            SqlConnection con = new SqlConnection();
            //gọi chuỗi kết nối ở file App.config bằng thuộc tính ConnectionString
            con.ConnectionString = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
            try
            {
                // viết câu lệnh query để thêm dữ liệu vào bảng với các trường tương ứng
                SqlCommand cm = new SqlCommand("insert into student (id, name, email, join_date) values ('101', 'Freetuts.net', 'Freetuts@gmail.com', '7/27/2021')", con);
                // mở chuỗi kết nối
                con.Open();
                // sử dụng phương thức ExecuteNonQuery() để thực thi câu lệnh
                cm.ExecuteNonQuery();
                // thông báo ra màn hình khi thêm dữ liệu thành công
                Console.WriteLine("Them moi du lieu thanh cong !!!");
            }
            catch (Exception e)
            {
                Console.WriteLine("Co loi xay ra !!!" + e);
            }
            // dóng chuỗi kết nối
            finally
            {
                con.Close();
            }
        }
    }
}

Kết quả:

bai2 12 PNG

5. Truy xuất dữ liệu từ SQL Server bằng ADO.NET

Dưới đây là đoạn code mình đã viết dùng để truy xuất dữ liệu từ SQL Server bằng ADO.NET, các bạn có thể tham khảo nhé.

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            //gọi hàm Retrieve để truy xuất dữ liệu
            new Program().Retrieve();
            Console.ReadKey();
        }
        public void Retrieve()
        {
            //sử dụng lớp SqlConnection để tạo chuỗi kết nối
            SqlConnection con = new SqlConnection();
            //gọi chuỗi kết nối ở file App.config bằng thuộc tính ConnectionString
            con.ConnectionString = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
            try
            {
                // viết câu lệnh query truy xuất dữ liệu
                SqlCommand cm = new SqlCommand("Select * from student", con);
                // mở chuỗi kết nối
                con.Open();
                // sử dụng phương thức ExecuteReader() để thực thi câu lệnh
                SqlDataReader sdr = cm.ExecuteReader();
                // sử dụng vòng lặp while để lấy hết dữ liệu có trong bảng
                while (sdr.Read())
                {
                    // hiển thị dữ liệu ra màn hình
                    Console.WriteLine(sdr["id"] + " " + sdr["name"] + " " + sdr["email"]);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("Co loi xay ra !!!" + e);
            }
            // dóng chuỗi kết nối
            finally
            {
                con.Close();
            }
        }
    }
}

Kết quả:

bai2 13 png

6. Xóa dữ liệu khỏi SQL Server bằng ADO.NET

Tương tự như các thao tác khác, sau khi kết nối tới SQL Server. Các bạn chỉ cần viết câu lệnh Query để thêm vào SQL Server và thực hiện nó mà thôi.

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            //gọi hàm Delete để truy xuất dữ liệu
            new Program().Delete();
            Console.ReadKey();
        }
        public void Delete()
        {
            //sử dụng lớp SqlConnection để tạo chuỗi kết nối
            SqlConnection con = new SqlConnection();
            //gọi chuỗi kết nối ở file App.config bằng thuộc tính ConnectionString
            con.ConnectionString = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
            try
            {
                // viết câu lệnh query để xóa dữ liệu
                SqlCommand cm = new SqlCommand("delete from student where id = '101'", con);
                // mở chuỗi kết nối
                con.Open();
                // sử dụng phương thức ExecuteNonQuery() để thực thi câu lệnh
                cm.ExecuteNonQuery();
                // hiển thị ra màn hỉnh thông báo
                Console.WriteLine("Xoa thanh cong du lieu !!!");
            }
            catch (Exception e)
            {
                Console.WriteLine("Co loi xay ra !!!" + e);
            }
            // dóng chuỗi kết nối
            finally
            {
                con.Close();
            }
        }
    }
}

Kết quả:

bai2 14 png

Như vậy là chúng ta đã tìm hiểu sơ lược về ADO.NET sử dụng cơ sở dữ liệu SQL Server. Đây là những kiến thức cơ bản vì vậy các bạn cần nắm rõ nó trước khi đi vào các bài sau nhé. Ở bài tiếp theo chúng ta sẽ tìm hiểu về SqlConnection trong ADO.NET, cũng như các thuộc tính và chức năng của nó.

Cùng chuyên mục:

Cách dùng Stack (ngắn xếp) trong C#

Cách dùng Stack (ngắn xếp) trong C#

Mình sẽ giới thiệu về các đặc điểm, thuộc tính và phương thức của Stack…

Cách dùng Queue (hàng đợi) trong C#

Cách dùng Queue (hàng đợi) trong C#

Mình sẽ giới thiệu về các đặc điểm, thuộc tính, phương thức của Queue, cũng…

Cách dùng Hashtable (bảng băm) trong C#

Cách dùng Hashtable (bảng băm) trong C#

Cụ thể sẽ tìm hiểu Hashtable là gì? các đặc điểm của nó, cùng với…

Sự kiện Enter và Leave trong C# Winforms

Sự kiện Enter và Leave trong C# Winforms

Trong bài viết này mình sẽ hướng dẫn các bạn cách ...

Sự kiện KeyPress, KeyDown, KeyUp trong C# Winforms

Sự kiện KeyPress, KeyDown, KeyUp trong C# Winforms

Một câu hỏi được đặt ra là làm cách nào để có thể phát hiện…

Sắp xếp trộn trong C# (Merge Sort)

Sắp xếp trộn trong C# (Merge Sort)

Trong bài viết này mình sẽ hướng dẫn các bạn cách sắp xếp các ..

Sắp xếp nổi bọt trong C# (Bubble Sort)

Sắp xếp nổi bọt trong C# (Bubble Sort)

Trong bài viết này mình sẽ hướng dẫn các bạn cách sắp ...

Cách in ra hình tam giác ký tự * trong C#

Cách in ra hình tam giác ký tự * trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách ...

Cách tính tổng các số chẵn từ 1 đến N trong C#

Cách tính tổng các số chẵn từ 1 đến N trong C#

Trước khi đi vào viết chương trình, chúng ta cùng tìm hiểu qua số chẵn…

Cách tính tổng các số lẻ từ 1 đến N trong C#

Cách tính tổng các số lẻ từ 1 đến N trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách tính tổng các lẻ…

Cách đếm số chữ số của một số nguyên trong C#

Cách đếm số chữ số của một số nguyên trong C#

Chúng ta cùng xem qua một số ví dụ để hiểu rõ hơn về chương…

Cách tính chu vi và diện tích hình tam giác trong C#

Cách tính chu vi và diện tích hình tam giác trong C#

Tam giác là một loại hình cơ bản trong hình học, có ba đỉnh là…

Cách tính chu vi và diện tích hình tròn trong C#

Cách tính chu vi và diện tích hình tròn trong C#

Trước khi đi vào viết chương trình tính chu vi và diện ..

Cách tính chu vi và diện tích hình chữ nhật trong C#

Cách tính chu vi và diện tích hình chữ nhật trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn ...

Cách xóa phần tử trùng lặp khỏi mảng trong C#

Cách xóa phần tử trùng lặp khỏi mảng trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách loại bỏ các ..

Cách tìm tất cả các chuỗi con của chuỗi đã cho trong C#

Cách tìm tất cả các chuỗi con của chuỗi đã cho trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách tìm ...

Cách xóa các ký tự trùng lặp khỏi chuỗi trong C#

Cách xóa các ký tự trùng lặp khỏi chuỗi trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách xóa các ký tự…

Đếm số lần xuất hiện của ký tự trong chuỗi trong C#

Đếm số lần xuất hiện của ký tự trong chuỗi trong C#

Trong bài viết này minh sẽ hướng dẫn các bạn cách đếm ...

Cách chuyển đổi nhị phân sang thập phân trong C#

Cách chuyển đổi nhị phân sang thập phân trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách chuyển đổi số ...

Cách chuyển đổi thập phân sang nhị phân trong C#

Cách chuyển đổi thập phân sang nhị phân trong C#

Số nhị phân là các con số có cơ số là 2. Các số nhị…

Top