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ố 15 kết quả

Đề tài: thao tác dữ liệu với c#

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

    Mặc định thao tác dữ liệu với c#

    mình có vài bản bằng acces như sau

    bảng 1:
    ----|------------|
    | fiel1 |-----| fiel2|
    |--a---|-----|--b--|
    bảng 2:

    |fiel1|----|----fiel2 |
    |-c-------|-----d--|

    bảng 3:

    |fiel1|----|----fiel2-|
    |a|-------|----b---|
    mình muốn lấy dữ liệu có dạng như sau dưới dạng string:
    "a-b-c-d"(đây là dạng chuổi nhé)mình đang rất cần giúp mình với nhé

    3 bảng không có quan hệ mình muốn lấy giá trị a của table1.field1 và giá trị b của table2.f1 giá trị c của table3.f1

    table1 có f1=a,f2=b tabl2 có f1=b,f2=c table3 có f1=c,f2=d
    Đã được chỉnh sửa lần cuối bởi nhc1987 : 31-10-2007 lúc 05:05 PM.

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

    // ý tưởng nhé
    bạn khai báo ba biến cấu trúc (sợ phí bộ nhớ thì 1 cũng ok, nhưng thao tác phải kỹ, và 3 bảng phải trùng các trường)có số lựong biến thành viên trùng số lượng cột 3 bảng
    b2: đọc dữ liệu vô 3 biến cấu trúc
    b3: khai báo chuổi, cho for chạy dùng += để đưa vào

    // có gì mình soạn code sau, vì mình hơi bận, xin lỗi nhé,
    // nếu mình sai thì mọi người chỉ thêm

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

    bạn có thể cho mình code được không mình chưa hiểu ý bạn lắm

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

    nếu 3 bảng ko có quan hệ thì select 3 lần ra,lấy được giá trị thì ghép nó vào với nhau thôi,có gì đâu nhể
    Sống ở trên đời cần có một TẤM LÒNG để lúc đói còn có chỗ mà nhét THỨC ĂN

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

    Code:
    Public Structure CONG_TY
            Dim Ten As String
            Dim Dien_thoai As String
            Dim Dia_chi As String
        End Structure
        Public Function Doc() As CONG_TY
            Dim kq As CONG_TY
            Dim Chuoi_lenh As String = "select * from  Table"
            Dim Bang As DataTable = LT_BANG.Doc(Chuoi_lenh)
            Dim Dong As DataRow = Bang.Rows(0)
            kq.Ten = Dong.Item("Ten")
            kq.Dien_thoai = Dong.Item("Dien thoai")
            kq.Dia_chi = Dong.Item("Dia chi")
            Return kq
        End Function
    làm thêm 2 bảng nữa, trong hàm đọc luôn, cho for chạy,
    khai báo chuổi kq.ten+kq1.ten+kq2.ten
    v.v...
    convert qua C# nhé

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

    Mặc định thao tác dữ liệu với c#

    tôi có một bài tập như sau:
    bảng1 có 2 field : họ tên , Địa chỉ
    bảng2 có 2 field: Địa chỉ , cơ quan
    bảng3 có 2 field: cơ quan , số điện thoại
    làm thế nào khi biết số điên thoại thì ta lấy được chuổi :"họ tên-địa chỉ-cơ quan"
    các cao thủ nào biết giúp tôi với cứ như vậy mở rộng ra n bảng,tôi sử dụng acces,và viết code bằng c#

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

    Code:
    select bang1.* , bang2.coquan from bang1,bang2,bang3
    where bang1.diachi=bang2.diachi and bang2.coquan=bang3.coquan and bang3.sodienthoai= "????????"

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

    tôi có một bài tập như sau:
    bảng1 có 2 field : họ tên , Địa chỉ
    bảng2 có 2 field: Địa chỉ, cơ quan
    bảng3 có 2 field: Cơ quan, số điện thoại
    làm thế nào khi biết số điên thoại thì ta lấy được chuổi :"họ tên-địa chỉ-cơ quan"
    Bạn đã học qua CSDL chưa? Các cấu trúc truy vấn database bằng SQL bạn đã nắm vững chưa? Ráng nắm chắc trước khi làm nhé.

    Code demo cho bạn đây

    PHP Code:
    using System;
    using System.Data.SqlClient;
    public class 
    ExecuteReaderExample
    {
       public static 
    void Main(string[] args)
       {
          
    // Tạo string kết nối CSDL
          
    string source "server=(local);" +
                          
    "integrated security=SSPI;" +
                           
    "database=Database_name";// Database_name là tên database của bạn
         // Tạo string truy vấn CSDL 
         
    string select "SELECT bang1.* , bang2.coquan";
          
    select select " from ang1,bang2,bang3";
          
    select select " where bang1.diachi=bang2.diachi and bang2.coquan=bang3.coquan and bang3.sodienthoai= "????????"";
          
    // Thực thi kết nối
          
    SqlConnection conn = new SqlConnection(source);
          
    conn.Open();
          
    SqlCommand cmd = new SqlCommand(selectconn);
          
    // Dùng SqlDataReader để chứa các File trả về
          
    SqlDataReader reader cmd.ExecuteReader();
          while(
    reader.Read())
          {
             
    Console.WriteLine("Contact : {0,-20} Company : {1}, {2} ..." ,
                                
    reader[0] , reader[1], reader[2] ...); // Cái này bạn xuất ra theo ý mình
          
    }
       }

    Regards,

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

    như vậy thì n bảng câu lệnh select sẽ rất dài
    nếu như mình muốn chuyển qua dùng kiểu cầu trúc hoặc cây nhị phân tìm kiếm có được không(vẫn bài toán đó).ai đó có thể giúp mình không vì cấu trúc và cây nhị phân tìm kiếm mình vẫn còn mơ hồ lắm

    một vấn đề nữa là cũng bài tập trên nhưng có nhiều bảng giống bảng1,hoặc có nhiều bảng giống bảng2(giống về tên trường nhưng value lại khác)mình chỉ biết được số điện thoại ở bảng3 thì phải làm thế nào(cũng yêu cầu lấy chuổi như bài tập trước)

    ví dụ như có 2 bảng2 và số record ở field cơ quan của bảng 3 = tổng số record ở field cơ quan của 2 bảng số 2 cộng lại(giá trị ở field cơ quan không trùng nhau ở cả 2 bảng 2 và bảng 3)
    ví dụ ở bảng2 thứ nhất :field cơ quan có 1 record=hành chính
    bảng 2 thứ 2:field cơ quan có 1 record=văn phòng
    bảng 3 :field cơ quan có 2 record là hành chính và văn phòng
    yêu cầu từ mỗi số điên thoại của bảng 3 lấy được :họ tên-địa chỉ-cơ quan ứng với số đt đó

    Vui lòng lưu ý: Không gửi liên tiếp nhiều bài viết cùng một đề tài nhé. (Nhắc nhở bởi Dreaminess)

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

    bài thầy ra hay bạn tự tưởng tượng, mà mình thấy nó hơi bị ko rõ ràng

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