CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 414

414
Chương 10: Cơ sở dữ liệu

Không có OLE DB provider hay provider được-quản-lý nào cho Excel. Tuy nhiên, bạn có thể
sử dụng Microsoft Excel ODBC Driver (được cài đặt mặc định cùng với Excel) kết hợp với
ODBC .NET provider (đi kèm với .NET Framework 1.1Visual Studio .NET 2003).
Trong chuỗi kết nối, bạn cần chỉ định driver mà bạn đang sử dụng và tên file Excel. Ví dụ
dưới đây chỉ đến file test.xls trong thư mục startup của ứng dụng:

private string ConnectionString = "Driver={Microsoft Excel Driver
(*.xls)};DriverId=790;Dbq=" + Application.StartupPath + "\\test.xls;";

Sau khi kết nối, bạn có thể thực hiện hai kiểu thao tác:

SELECT

hay

INSERT

. Thay vì sử dụng

bảng, bạn chọn hay chèn dựa vào tên sheet. Tên sheet phải kết thúc bằng dấu đô la (

$

) và được

đặt trong dấu ngoặc vuông (nếu không, sẽ sinh ra lỗi cú pháp). Định dạng bị bỏ qua, và hàng
đầu tiên tự động được sử dụng làm các tên cột.
Ví dụ dưới đây trích và hiển thị tất cả các hàng trong Sheet1. Hình 10.2 là file Excel gốc. Hình
10.3 là dữ liệu được trình bày trên form.

private void ExcelView_Load (System.Object sender, System.EventArgs e)

{

OdbcConnection Con = new OdbcConnection(ConnectionString);

OdbcDataAdapter Adapter = new OdbcDataAdapter("SELECT * FROM [Sheet1$]",

Con);

DataSet Ds = new DataSet();

try

{

Con.Open();

Adapter.Fill(Ds, "Sheet1");

}

catch (Exception Err)

{

MessageBox.Show(Err.ToString());

}

finally

{

Con.Close();

}

grid.DataSource = Ds.Tables["Sheet1"];

}

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.