Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 11 kết quả

Đề tài: Chuyển dữ liệu từ SQL sang XML trên C#

  1. #1
    Ngày gia nhập
    05 2009
    Bài viết
    1

    Mặc định Chuyển dữ liệu từ SQL sang XML trên C#

    Chào các bác!
    Em mới bắt đầu làm quen với C#, rất muốn tìm hiểu cách tạo ra 1 file (*.xml) sau đó đưa nội dung bất kỳ lên file này.
    Rông hơn: Chuyển dữ liệu từ một bảng (trong SQL) sang XML trên C#.
    Rất mong được chỉ giáo của các bác.
    Xin cảm ơn nhiều!

  2. #2
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Trong dataset hay datatable nó có hẵn 1 hàm ghi ra file xml cho bạn rồi....

    Nếu mình nhớ không lầm thì ... hàm WriteXML để ghi dữ liệu từ datatable hay dataset ra file xml...

    Visual C# Code:
    1.             DataTable tbl = new DataTable();
    2. // đọc dữ liệu từ database lên datatable hay dataset ở đây....
    3.             tbl.WriteXml("tenfilexml.xml");

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

    tiện thể đây mình hướng dẫn 1 application ghi dữ liệu vài file .xml cho trực quan
    đầu tiên mở VS ra tạo 1 project là : WriterXML
    tiếp đến kéo 2 button nên form
    thiết lập các proprieties cho 2 button như sau :
    _thay đổi thuộc tính Name của button1 thành btnWriter và text thành Writer
    _ tương tự thay đổi thuộc tính của button2 thành bntFile và File
    rồi thế là xong bước đầu tiên, phần tiếp theo viết mã lệnh cho application

    đầu tiên khai báo các namespace sử dụng trong application

    Visual C# Code:
    1. using System;
    2. using System.Data;
    3. using System.Data.SqlClient;
    tiếp đến viết code cho 2 event click của 2 button như sau:

    Visual C# Code:
    1. private void btnWriter_Click(object sender, System.EventArgs e) {
    2.  
    3.   string myConnectionString = "User ID=login;password=password;Initial Catalog=Northwind;
    4.                               Data Source=servername";
    5.   string mySelectQuery = "Select * From Customers";
    6.            
    7.   System.IO.FileStream myFileStream = new System.IO.FileStream
    8.                                       ("c:\\mySchema.xml", System.IO.FileMode.Create);
    9.   System.Xml.XmlTextWriter MyXmlTextWriter = new System.Xml.XmlTextWriter
    10.                                              (myFileStream, System.Text.Encoding.Unicode);
    11.   try {
    12.  
    13.      SqlConnection con = new SqlConnection(myConnectionString);
    14.      SqlDataAdapter daCust = new SqlDataAdapter(mySelectQuery, con);
    15.      DataSet ds = new DataSet();
    16.      daCust.Fill(ds, "Cust");
    17.  
    18.    
    19.      ds.WriteXml(MyXmlTextWriter, XmlWriteMode.WriteSchema);
    20.      
    21.      MessageBox.Show("Save complete");
    22.   }
    23.   catch (System.Exception ex) {
    24.  
    25.      MessageBox.Show(ex.ToString());
    26.   }
    27.  
    28.   finally {
    29.  
    30.      MyXmlTextWriter.Close();
    31.      myFileStream.Close();
    32.   }
    33. }
    34.  
    35. private void btnFile_Click(object sender, System.EventArgs e) {
    36.  
    37.   string myConnectionString = "User ID=login;password=password;Initial Catalog=Northwind;
    38.                               Data Source=servername";
    39.   string mySelectQuery = "Select * From Customers";
    40.  
    41.   try {
    42.  
    43.         SqlConnection con = new SqlConnection(myConnectionString);
    44.         SqlDataAdapter daCust = new SqlDataAdapter(mySelectQuery, con);
    45.         DataSet ds = new DataSet();
    46.         daCust.Fill(ds, "Cust");
    47.  
    48.    
    49.     ds.WriteXml("c:\\mySchema.xml", XmlWriteMode.WriteSchema);
    50.    
    51.     MessageBox.Show("Save complete");
    52.    }
    53.  
    54.    catch (System.Exception ex) {
    55.     MessageBox.Show(ex.ToString());
    56.    }
    57. }
    chú ý rằng ở đây file mySchema.xml bạn phải tạo ra trước và để trong ổ C, còn nếu bạn muốn tạo ra 1 file .xml tùy ý bằng code thì làm như sau
    kéo 1 button nữa lên form, thiết lập các proprieties cho button tùy ý bạn
    trong event clicl của button ta code vào như sau:
    Visual C# Code:
    1. string filepath = Application.StartupPath + "\\ WriteXML.XML";
    2. testDBDataSet.WriteXml(filepath, XmlWriteMode.IgnoreSchema);
    3. MessageBox.Show("Writer XML Complete");

    ở đây filepath là đường dẫn mà bạn muốn đặt file .xml mà bạn tạo ra vào đó, không muốn bạn có thể thay đổi thành "C:\\myfile.xml", nếu bạn muốn. code này mính viết sẵn, lười quá không muốn sửa lại, bạn cứ xem và làm tương tự rùi f5 xem thế nào, có gì post nên mình sẽ giải thích, tạm thời xem quá ví dụ cho trực quan, còn vấn đề gì bàn itees....khà khà
    Đã được chỉnh sửa lần cuối bởi huongit1984 : 06-05-2009 lúc 09:18 AM.

  4. #4
    Ngày gia nhập
    10 2008
    Bài viết
    33

    có cách nào ghi ngược lại dữ liệu từ File XML lên Database không?
    Xin cảm ơn.

  5. #5
    Ngày gia nhập
    11 2008
    Bài viết
    77

    ds.ReadXML("Ten File") rồi lưu dữ liệu vào trong database
    Gian hàng giá tốt: http://www.worldstore.vn/

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

    Mặc định Chuyển dữ liệu từ SQL sang XML trên C#

    Trích dẫn Nguyên bản được gửi bởi huynhngocduc_63 Xem bài viết
    có cách nào ghi ngược lại dữ liệu từ File XML lên Database không?
    Xin cảm ơn.
    đang định nói tiện thể bạn hỏi tôi nói luôn
    bạn tạo 1 application như trên
    drag (kéo) 1 button và 1 datagridview nên form, các propreties bạn đặt tùy ý bạn miễn sao thấy hợp lý là được
    trước khi run application này thì bạn nhớ là tạo ra 1 file .xml trước đã, nếu không bạn bulid project tôi gửi ở trên rồi hãy run project này.

    trong event click của button bạn code vào như sau
    Visual C# Code:
    1.             DataSet ds = new DataSet();
    2.             string FilePath = Application.StartupPath + "\\ WriteXML.XML";
    3.             if (File.Exists(FilePath))
    4.             {
    5.                 FileStream fsReadXML = new FileStream(FilePath, FileMode.Open);
    6.  
    7.                 ds.ReadXml(fsReadXML );
    8.                 grdXML.DataSource = ds.Tables[0];
    9.                
    10.             }
    11.             else
    12.             {
    13.                 MessageBox.Show("File không tồn tại");
    14.                 return;
    15.                
    16.             }
    đến đây bạn run application sẽ thấy kết quả ngay , chạy thử đi có gì thắc mắc bạn post nên để mọi người tham khảo.

  7. #7
    Ngày gia nhập
    10 2008
    Bài viết
    33

    giả sử bây giờ có kiểu date trong table là dd-mm-yyyy. bây giờ muốn lưu data vào file xml theo kiểu date là yyyy-mm-dd thì làm thế nào?Xin cảm ơn nhiều

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

    vấn đề này bạn có thể tự suy luận ra cũng được, về cơ bản để đọc ghi XML thì VS hỗ trợ ta 2 methods readXml và writeXml rồi, vấn đề còn lại là xào nấu 2 thằng này thôi
    muốn làm như ý của bạn thì có nhiều cách, tôi gợi ý bạn một số cách bạn tự viết code
    - Trước khi fill dữ liệu và Dataset bạn format kiểu Datetime thành format mà bạn muốn ghi vào XML .
    - Không thì ghi vào XML rồi bạn đọc ngược lại từng Element và update lại format cho kiểu datetime mà bạn muốn chuyển đổi
    - Bạn có thể dùng LINQ để tạo trực tiếp 1 XML, cách này hay nhất, muốn làm được bạn đọc qua về LINQ trước

  9. #9
    Ngày gia nhập
    05 2010
    Bài viết
    2

    Mặc định Help về tạo database bằng xml

    Mọi người có ai biết cách tạo csdl bằng xml ko bảo mình với! mình đang phải làm bài tập lớn xml, nhưng ko biết làm thế nào! ai biết giúp mình với! thanks mọi người.

  10. #10
    Ngày gia nhập
    05 2009
    Bài viết
    1

    vậy bây giờ em có file từ diển .dict mà em muốn ghi dữ liệu đó lên file XML theo một cấu trúc của riêng em thì phải làm thế nào trong C#

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

  1. Code chuyển tiền số sang chữ trên C#
    Gửi bởi vuongnt.vn trong diễn đàn Tutorials và Thủ thuật lập trình C#, ASP.NET
    Trả lời: 26
    Bài viết cuối: 06-07-2015, 12:16 PM
  2. Cách chuyển từ Gridview sang DataList trên web ASP.NET?
    Gửi bởi namlangtu trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 2
    Bài viết cuối: 24-01-2013, 11:12 AM
  3. Cách chuyển đổi các ký tự sang Mã ASCII trên C???
    Gửi bởi chipnin trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 12
    Bài viết cuối: 31-05-2012, 11:25 PM
  4. vấn đề chuyển giá trị text trên Form sang report?
    Gửi bởi DuyCanh trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 4
    Bài viết cuối: 23-11-2010, 11:44 AM
  5. Chuyển từ trung tố sang hậu tố trên ngôn ngữ C!
    Gửi bởi nqpbvh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 14-05-2009, 08:22 PM

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