Cách lấy dữ liệu từ excel vào CSDL bằng C#Mình có 1 form trong form có 1 nút load dữ liệu và 1 datagridview và mình có 1 file excel chứa dữ liệu.. Mình muốn làm như sau: khi mình kich và
Trang 1Cách lấy dữ liệu từ excel vào CSDL bằng C#
Mình có 1 form trong form có 1 nút load dữ liệu và 1 datagridview và mình có 1 file excel chứa dữ liệu Mình muốn làm như sau: khi mình kich vào nút load dữ liệu thì sẽ chọn được tới file excel của mình ( cái này mình đã làm được ) và sau đó các dữ liệu
ở trên file excel đó sẽ được load hết vào trong CSDL ( Bảng trong CSDL có các trường tương ứng với các trường trong file excel) và sau khi load sẽ hiển thị dữ liệu ở file excel trên datagridview Mong các bạn chỉ giúp mình cách để có thể load được dữ liệu
từ file excel vào CSDL Mình đang cần chỉ giúp gấp Cảm ơn các bạn rất nhiều !!
#2
28-11-2010, 12:53 AM
hkthanh89
Thành viên mới
Ngày gia nhập: 11 2010 Nơi ở: Bình Dương Bài viết: 16
Bạn hãy chuyển file excel thành file csv
Sau đó thực hiện đọc file csv và ghi dữ liệu vào CSDL
Bạn có thể kham thảo 2 link sau :
http://www.java2s.com/Code/CSharp/Da essbutton1.htm
http://www.java2s.com/Code/CSharp/Da ntoDataSet.htm
#3
28-11-2010, 03:28 AM
Magiczvn Thành viên chính thức
Ngày gia nhập: 06 2009 Bài viết: 39
Dùng thư viện ExcelDatareader này đi bạn, rất hiệu quả đấy!
http://exceldatareader.codeplex.com/
Nếu bạn không muốn sử dụng thư viện thì có thể tham khảo bài viết này:
http://ddth.com/showthread.php?t=363860
Đã được chỉnh sửa lần cuối bởi Magiczvn : 28-11-2010 lúc 03:41 AM
#4
28-11-2010, 10:28 PM
Trang 2nguyenkhanhminh Thành viên mới
Ngày gia nhập: 04 2010 Bài viết: 23
Trích dẫn:
Nguyên bản được gửi bởi Magiczvn
Dùng thư viện ExcelDatareader này đi bạn, rất hiệu quả đấy!
http://exceldatareader.codeplex.com/
Nếu bạn không muốn sử dụng thư viện thì có thể tham khảo bài viết này:
http://ddth.com/showthread.php?t=363860
Cảm ơn các bạn đã giúp đỡ rất nhiều Do thời gian mình đang cần xử lý gấp nên
mình thấy sử dụng thư viện ExcelDatareader sẽ thuận lợi hơn nhưng mình chưa rõ cách dùng các hàm của thư viện này Mong bạn có thể post 1 bài chỉ cho mình cách dùng chi tiết thư viện này có thêm ví dụ nhỏ minh họa nữa thì tốt quá Mình nghĩ
cũng có nhiều bạn cũng muốn được giúp đỡ như mình nên mong sẽ được sự giúp đỡ chi tiết cách dùng thư viện này ! Cảm ơn bạn rất nhiều !
#5
29-11-2010, 02:05 AM
Magiczvn Thành viên chính thức
Ngày gia nhập: 06 2009 Bài viết: 39
Cái trang mình đưa có ví dụ mẫu luôn rồi đó bạn (filePath là đường dẫn tới file excel, DataSet result chứa các DataTable kết quả (một file excel có nhiều sheet, mỗi sheet là 1
DataTable)
PHP Code:
FileStream stream = File.Open(filePath, FileMode.Open, FileAccess.Read);
//1 Nếu là file Excel 2003 thì dùng cái này('97-2003 format; *.xls)
IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
//
//2.Nếu là file Excel 2007 thì dùng cái này (2007 format; *.xlsx)
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
//
//3 DataSet - The result of each spreadsheet will be created in the result.Ta bles
DataSet result = excelReader.AsDataSet();
excelReader.Close();
Trang 3Đã được chỉnh sửa lần cuối bởi Magiczvn : 29-11-2010 lúc 01:27 PM
#6
29-11-2010, 08:57 AM
nguyenkhanhminh Thành viên mới
Ngày gia nhập: 04 2010 Bài viết: 23
Trích dẫn:
Nguyên bản được gửi bởi Magiczvn
Cái trang mình đưa có ví dụ mẫu luôn rồi đó bạn (filePath là đường dẫn tới file excel,
DataSet result chứa các DataTable kết quả (một file excel có nhiều sheet, mỗi sheet là 1
DataTable)
Ý mình là mình chưa dùng thư viện này bao giờ nên cách gọi hàm và sử dụng các hàm của
thư viện này ra sao mình vẫn chưa biết Nếu được mong bạn làm 1 ví dụ nhỏ chỉ cụ thể cho
mình ! Mong được bạn giúp đỡ !
P/S: à bạn cho mình hỏi luôn là mình đã dow thư viện đó về vậy giờ phải đặt thư viện đó ở
đâu để có thể sử dụng ! ^_^ mình hơi dốt mong bạn thông cảm giúp đỡ !
#7
29-11-2010, 02:15 PM
Magiczvn Thành viên chính thức
Ngày gia nhập: 06 2009 Bài viết: 39
1 Cách Add Reference:
Trang 52 Chương trình mẫu:
Trang 6Link Download: http://www.mediafire.com/?c8d9wnxg55mw9rd
Trang 7#8
29-11-2010, 04:53 PM
nguyenkhanhminh Thành viên mới
Ngày gia nhập: 04 2010 Bài viết: 23
Cảm ơn bạn rất nhiều Ví dụ của bạn rất đơn giản và dễ hiểu ! Đúng là cái mình đang cần dùng
Có một vấn đề nữa mình muốn bạn chỉ giúp là sau khi đã load được dữ liệu từ file excel rồi mình muốn lưu các
dữ liệu đó vào 1 bảng trong CSDL ( đã có các cột tương ứng ) thì mình sẽ làm tiếp thế nào ! Mình mới chỉ biết cách xử lý để lưu được từng dòng trên datagridview vào CSDL thông qua event Cell_Click chứ chưa biết cách xử
lý lưu cả 1 bảng vào Mong bạn giúp mình tiếp ^_^
#9
30-11-2010, 11:54 PM
Magiczvn Thành viên chính thức
Ngày gia nhập: 06 2009 Bài viết: 39
Thì duyệt từng dòng trên DataTable thôi bạn, mình hơi bận nên không làm ví du cho bạn được
PHP Code:
foreach(DataRow r in DataTable)
{
}
#10
01-12-2010, 07:30 PM
nguyenkhanhminh
Thành viên mới
Ngày gia nhập: 04 2010 Bài viết: 23
Trích dẫn:
Nguyên bản được gửi bởi Magiczvn
Thì duyệt từng dòng trên DataTable thôi bạn, mình hơi bận nên không làm ví du cho bạn được.
Trang 8PHP Code:
foreach(DataRow r in DataTable)
{
}
>_< mong bạn khi rảnh sẽ làm ví dụ giúp mình Thực sự đọc ví dụ của bạn mình hiểu được rất nhiều Giờ mình mong bạn sẽ giúp mình cách load dữ liệu từ file excel vào trong bảng của CSDL ( bảng excel và bảng CSDL là giống nhau ) Cảm ơn bạn nhiều !
Trích dẫn:
Nguyên bản được gửi bởi nguyenkhanhminh
>_< mong bạn khi rảnh sẽ làm ví dụ giúp mình Thực sự đọc ví dụ của bạn mình hiểu được rất nhiều Giờ mình mong bạn sẽ giúp mình cách load dữ liệu từ file excel vào trong bảng của CSDL ( bảng excel và bảng CSDL là giống nhau ) Cảm ơn bạn nhiều !
Thì duyệt từng dòng trong DataTable rồi insert dòng đó vào CSDL
#12
20-12-2010, 03:45 PM
quangtn_07mt
Thành viên mới
Ngày gia nhập: 04 2010 Bài viết: 4
Trích dẫn:
Nguyên bản được gửi bởi Magiczvn
1 Cách Add Reference:
Trang 92 Chương trình mẫu:
Trang 11Link Download: http://www.mediafire.com/?c8d9wnxg55mw9rd
Cảm ơn bạn nhiều đang cần cái này
#13 21-12-2010, 09:23 AM
nguyenkhanhminh Thành viên mới
Ngày gia nhập: 04 2010 Bài viết: 23
^_^ Cuối cùng mình cũng đã hoàn thiện được việc lấy dữ liệu từ file excel và load vào CSDL Cảm ơn sự giúp đỡ của các bạn rất nhiều đặc biệt là bạn Magiczvn Nếu
có dịp mình xin mời bạn đi uống cốc cafe với mình để mình có thể trực tiếp cảm ơn
và được hỏi bạn thêm nhiều vấn đề khác ! ^_^
#14 21-12-2010, 10:37 AM
Trang 12Thành viên mới
Ngày gia nhập: 12 2010 Bài viết: 5
Trích dẫn:
Nguyên bản được gửi bởi nguyenkhanhminh
^_^ Cuối cùng mình cũng đã hoàn thiện được việc lấy dữ liệu từ file excel và load vào CSDL Cảm ơn sự giúp đỡ của các bạn rất nhiều đặc biệt là bạn Magiczvn Nếu có dịp mình xin mời bạn đi uống cốc cafe với mình để mình có thể trực tiếp cảm ơn và được hỏi bạn thêm nhiều vấn đề khác ! ^_^
Bạn ơi có thể chia sẻ cách làm được không bạn Mình cung đang nghiên cứu về vấn
đề này Mong hồi âm
#15
24-01-2011, 01:30 PM
ngocthangvkc
Thành viên mới
Ngày gia nhập: 11 2010 Bài viết: 1
thanks nhieu
hhhhhhhhhhhhhhhhhhhhhh