Trang 1 trên tổng số 3 123 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 21 kết quả

Đề tài: Ứng dụng console ADO.NET đầu tiên

  1. #1
    Ngày gia nhập
    01 2007
    Bài viết
    412

    Smile Ứng dụng console ADO.NET đầu tiên

    Hiện tại, cũng đang bước đầu học về SQL SERVER và ADO.NET,làm được cái ứng dụng đầu tiên, thấy khoái quá nên post thành bài viết chia sẻ cho mọi người. Các bước như sau:
    - Tạo 1 ứng dụng Console, bạn muốn đặt tên dự án là gì cũng được
    - Thêm 2 namespace sau:
    Code:
    using System.Data;
    using System.Data.SqlClient;
    - Để mình hướng dẫn từ từ:
    + Tạo 1 chuỗi kết nối và 1 chuỗi lệnh SQL
    Code:
    //chuỗi kết nối, ở đây mình dùng CSDL northwind.mdf của SQL SERVER
                string connString = @"server = .\sqlexpress;integrated security = true;database = northwind";
                //câu lệnh SQL (chọn tất cả các cột của bảng Employees)
                string sql = @"SELECT * FROM employees";
    + Khai báo 1 bộ kết nối CSDL và 1 bộ đọc dữ liệu
    Code:
    //khai báo bộ kết nối CSDL từ SQL SERVER
                SqlConnection conn = null;
                //khai báo bộ đọc dữ liệu
                SqlDataReader reader = null;
    + Có bộ kết nối rồi, ta bắt đầu cho nó hoạt động
    Code:
    //mở kết nối CSDL cho ta
                    conn = new SqlConnection(connString);
                    conn.Open();
    + Bây giờ, chúng ta vừa "đột nhập" vào CSDL. Bước kế tiếp, đi lấy tài nguyên của nó bằng cách dùng câu lệnh SQL mà từ đầu ta đã khai báo:
    Code:
    //thuc thi query
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    reader = cmd.ExecuteReader();
    + A ha, lấy được rồi, mang về nhà xem CSDL nó như thế nào thì làm sao. OK, dùng đoạn code sau:
    Code:
    //in ra màn hình CSDL (bảng Employess có 2 cột là FirstName và LastName)
                    Console.WriteLine("First Name\tLast Name\n");
                    while (reader.Read())
                    {
                        Console.WriteLine("{0}|{1}", reader["FirstName"].ToString().PadLeft(10), reader[1].ToString());
    
                    }
    Ấy chết, chớ quên đóng lại kết nối nhé (để không tiêu hao tài nguyên lắm)
    Code:
    reader.Close();
                    conn.Close();
    OK, để tránh phát sinh lỗi trong quá trình kết nối CSDL, ta thêm khối lệnh trên vào block try-catch. Và đây là kết quả cuối cùng của chúng ta:
    Code:
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                //chuỗi kết nối, ở đây mình dùng CSDL northwind.mdf của SQL SERVER
                string connString = @"server = .\sqlexpress;integrated security = true;database = northwind";
                //câu lệnh SQL (chọn tất cả các cột của bảng Employees)
                string sql = @"SELECT * FROM employees";
    
                //khai báo bộ kết nối CSDL từ SQL SERVER
                SqlConnection conn = null;
                //khai báo bộ đọc dữ liệu
                SqlDataReader reader = null;
                try
                {
                    //mở kết nối CSDL cho ta
                    conn = new SqlConnection(connString);
                    conn.Open();
                    //thuc thi query
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    reader = cmd.ExecuteReader();
                    //in ra màn hình CSDL (bảng Employess có 2 cột là FirstName và LastName)
                    Console.WriteLine("First Name\tLast Name\n");
                    while (reader.Read())
                    {
                        Console.WriteLine("{0}|{1}", reader["FirstName"].ToString().PadLeft(10), reader[1].ToString());
    
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                }
                finally
                {
                    reader.Close();
                    conn.Close();
                }
            }
        }
    }

    Chúc mọi người thành công, ai có thắc mắc gì cứ reply lại trong topic này, mình sẽ tận tình giúp đỡ trong khả năng mới học của mình :(

  2. #2
    Ngày gia nhập
    08 2006
    Nơi ở
    Hải Phòng
    Bài viết
    218

    Code:
    //chuỗi kết nối, ở đây mình dùng CSDL northwind.mdf của SQL SERVER
                string connString = @"server = .\sqlexpress;integrated security = true;database = northwind";
                //câu lệnh SQL (chọn tất cả các cột của bảng Employees)
                string sql = @"SELECT * FROM employees";
    Cái kí hiệu @ ở đây có ý nghĩa gì ạ?

  3. #3
    Ngày gia nhập
    01 2007
    Bài viết
    412

    Trích dẫn Nguyên bản được gửi bởi hailoc12 Xem bài viết
    Code:
    //chuỗi kết nối, ở đây mình dùng CSDL northwind.mdf của SQL SERVER
                string connString = @"server = .\sqlexpress;integrated security = true;database = northwind";
                //câu lệnh SQL (chọn tất cả các cột của bảng Employees)
                string sql = @"SELECT * FROM employees";
    Cái kí hiệu @ ở đây có ý nghĩa gì ạ?
    Đoạn code:
    Code:
    string connString = @"server = .\sqlexpress;integrated security = true;database = northwind";
    Tương đương:
    Code:
    string connString = "server = .\\sqlexpress;integrated security = true;database = northwind";
    Dấu @ tạo một chuỗi verbatim literal theo đấy em khỏi dùng đến các ký tự escape như backslash "\"

  4. #4
    Ngày gia nhập
    08 2006
    Nơi ở
    Hải Phòng
    Bài viết
    218

    Thảo nào, em bỏ cái đó đi thì bị báo lỗi dùng sai chuỗi escape

  5. #5
    Ngày gia nhập
    07 2007
    Bài viết
    15

    Cho mình hỏi một tí
    Khi mình compile thì không có lỗi gì
    Nhưng khi chạy thì có thông báo rằng : Can not open database "Northwind" requested by login failed. Login failed by user 'sa'
    Mặc dù mình vẫn login ngon lành với user 'sa' và pass của mình trong SQL Server studio 2005 Express.
    Xin chỉ giúp. Cảm ơn rất rất nhiều!!!

  6. #6
    Ngày gia nhập
    06 2007
    Nơi ở
    Hà Nội
    Bài viết
    361

    Mặc định Ứng dụng console ADO.NET đầu tiên

    hình như northwind là access, trên chắc là anh Neverland dùng Northwind đã convert
    Blog tổng quan kiến thức về viễn thông : http://tongquanvienthong.blogspot.com/

    mSPDict từ điển android hỗ trợ liên kết tra trên các trình đọc sách điện tử và tra sách giấy thông qua camera
    http://www.tinhte.vn/threads/691731/

  7. #7
    Ngày gia nhập
    01 2007
    Bài viết
    412

    Trích dẫn Nguyên bản được gửi bởi tienlbhoc Xem bài viết
    hình như northwind là access, trên chắc là anh Neverland dùng Northwind đã convert
    Trong SQL SERVER 2000, đã có sẵn 1 database Northwind.
    Còn những ai dùng bản SQL SERVER 2k5, có thể vào link sau để tải về và cài đặt (trong quá trình cài đặt, nêu bí chỗ nào thì reply lại, mình sẽ trợ giúp)


    Còn đây là tập tin Northwind.mdb dùng cho Access, các bạn vào đây để tải về:


    Tất nhiên, mọi người có thể dùng database của mình. Nhưng thông thường, thì mấy newbie bên nước ngoài, họ dùng Northwind vì đây là 1 database tốt cho việc thực hành.

  8. #8
    Ngày gia nhập
    07 2007
    Bài viết
    15

    Cảm ơn nhiều nhé.
    Run rùi, vui quá

  9. #9
    Ngày gia nhập
    07 2007
    Bài viết
    15

    À thế khi mà viết dữ liệu thêm vào database thì làm thế nào.
    Mình đang thử làm PhoneBook.
    Vi dụ thêm : name, phonenumber,address (kiểu char hết) vào trong table của mình thì làm thế nào?

    Chỉ giúp mình nhé. Thanks so much!!!
    Đã được chỉnh sửa lần cuối bởi hacker_it007 : 12-07-2007 lúc 11:29 PM.

  10. #10
    Ngày gia nhập
    01 2007
    Bài viết
    412

    Trích dẫn Nguyên bản được gửi bởi hacker_it007 Xem bài viết
    À thế khi mà viết dữ liệu thêm vào database thì làm thế nào.
    Mình đang thử làm PhoneBook.
    Không biết viết thêm thế nào cả.
    Chỉ giúp mình nhé. Thanks so much!!!
    Dùng SqlDataAdapter kết hợp với DataSet. Nghĩa là muốn thêm dữ liệu, ta tạo 1 hàng mới với phương thức NewRow() của DataTable(). Sau đó chèn dữ liệu vào các hàng ứng với mỗi cột, tiếp đến thêm hàng mới vào table. Cuối cùng dùng phương thức Update(<Dataset>,"chuỗi khởi tạo DataSet") để cập nhật vào dữ liệu nguồn.

    Vui lòng coi cách thức tại đây:
    http://forums.congdongcviet.com/showthread.php?t=2885

Các đề tài tương tự

  1. Lỗi ghi đè phương thức Console.WriteLine() trong C# Console
    Gửi bởi Boyloichoi27 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 02-05-2013, 08:32 PM
  2. Lập trình C In k số nguyên tố đầu tiên có tổng các chữ số là chắn trong mảng, lỗi chỉ kiểm tra được với số đầu tiên?
    Gửi bởi ncn1992vn trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 23-11-2012, 10:20 PM
  3. Algorithm sự khác nhau giữa Console.readLine và Console.readKey ; giữa Console.write và console.writeLine
    Gửi bởi trangkizd_91 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 20-10-2011, 05:48 PM
  4. Xin một số bài lập trình console hướng đối tượng
    Gửi bởi dk3lan trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 1
    Bài viết cuối: 28-12-2009, 09:14 PM
  5. Close console trên C# | Giúp mình về Console Application trên C# với?
    Gửi bởi letheson trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 15-05-2009, 12:28 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn