Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Lập trình C# | Lỗi kết nối CSDL làm sao khắc phục?

  1. #1
    Ngày gia nhập
    12 2006
    Nơi ở
    HCM
    Bài viết
    62

    Mặc định Lập trình C# | Lỗi kết nối CSDL làm sao khắc phục?

    Đọan code sau đây mình viết trong VB.NET thì okie, nhưng bỏ qua C# thì nó báo lỗi
    'System.Data.DataSet.Tables' is a 'property' but is used like a 'method'
    Đây là code C#:
    <DataSet ds1 = new DataSet();
    SqlCommand a = new SqlCommand("select tentacgia,tennhaxuatban from ((sach inner join vietsach on sach.ms=vietsach.ms) inner join tacgia on vietsach.mtg=tacgia.mtg) inner join nhaxuatban on sach.mnxb=nhaxuatban.mnxb where sach.tensach='" + cbxtensach.SelectedItem + "'", cn);
    SqlDataAdapter ad1 = new SqlDataAdapter(a);
    ad1.Fill(ds1, "tac gia va nxb");
    txttentacgia.Text = ds1.Tables(0).Rows(0).Items(0);
    txttennxb.Text=ds1.Tables(0).Rows(0).Items(1);>
    Đây là code VB.NET :
    <Dim ds2 As New DataSet
    Dim cm2 As New SqlCommand("select masach,tensach,dongia,tenchude,tennhaxuatban from sach,nhaxuatban,chude where sach.manhaxuatban=nhaxuatban.manhaxuatban and sach.machude=chude.machude and masach='" & cbo_sach.SelectedValue & "'", cn)
    Dim ad2 As New SqlDataAdapter(cm2)
    ad2.Fill(ds2, "choose_book")
    txt_gia.Text = ds2.Tables(0).Rows(0).Item(2)
    txt_chude.Text = ds2.Tables(0).Rows(0).Item(3)
    txt_nxb.Text = ds2.Tables(0).Rows(0).Item(4)>
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.
    Geomatics

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

    xttentacgia.Text = ds1.Tables(0).Rows(0).Items(0);
    txttennxb.Text=ds1.Tables(0).Rows(0).Items(1);

    --> sửa:
    xttentacgia.Text = ds1.Tables[0].Rows[0].Items[0];
    txttennxb.Text=ds1.Tables[0].Rows[0].Items[1];

  3. #3
    Ngày gia nhập
    12 2006
    Nơi ở
    HCM
    Bài viết
    62

    Chạy nó không báo lỗi nhưng txttentacgia và txttennxb không hiển thị được field của câu truy vấn. Trong SQL thì F5 vẫn chạy ra 2 field này?
    Mình đã thử ds1.Tables[0].Rows[0][1].ToString() hoặc ds1.Tables[0].Rows[0]["tentacgia"].ToString() đều không được ?
    Đã được chỉnh sửa lần cuối bởi whamy04 : 25-07-2007 lúc 09:01 AM.
    Geomatics

  4. #4
    Ngày gia nhập
    12 2006
    Nơi ở
    HCM
    Bài viết
    62

    Giờ lại phát sinh lỗi mới Conversion failed when converting the varchar value 'Photoshop' to data type int. Photoshop là 1 giá trị trong SQL được load lên cbxtensach.
    Đây là tòan bộ code

    Visual C# Code:
    1. using System;
    2. using System.Data;
    3. using System.Configuration;
    4. using System.Collections;
    5. using System.Web;
    6. using System.Web.Security;
    7. using System.Web.UI;
    8. using System.Web.UI.WebControls;
    9. using System.Web.UI.WebControls.WebParts;
    10. using System.Web.UI.HtmlControls;
    11. using System.Data.SqlClient;
    12.  
    13. namespace Slide
    14. {
    15.    public partial class _Default : System.Web.UI.Page
    16.    {
    17.        protected void Page_Load(object sender, EventArgs e)
    18.        {
    19.            if (Page.IsPostBack == false)
    20.                LoadData();      
    21.        }
    22.  
    23.       protected void cbxtensach_SelectedIndexChanged(object sender, EventArgs e)
    24.        {
    25.            string ketnoi = "Data source=localhost; initial catalog=QLSACH; user=sa ; password=mytomcat;";
    26.            SqlConnection cn = new SqlConnection(ketnoi);
    27.            cn.Open();
    28.            DataSet ds1 = new DataSet();
    29.            SqlCommand a = new SqlCommand("select tentacgia,tennhaxuatban from ((sach inner join vietsach on sach.ms=vietsach.ms) inner join tacgia on vietsach.mtg=tacgia.mtg) inner join nhaxuatban on sach.mnxb=nhaxuatban.mnxb where sach.ms='" + cbxtensach.SelectedIndex + "'", cn);
    30.            SqlDataAdapter ad1 = new SqlDataAdapter(a);
    31.            ad1.Fill(ds1, "tac gia va nxb");
    32.            txttentacgia.Text = ds1.Tables[0].Rows[0].ItemArray[0].ToString();
    33.            txttennxb.Text = ds1.Tables[0].Rows[0]["tennhaxuatban"].ToString();
    34.        }
    35.        protected void LoadData()
    36.        {
    37.            string ketnoi = "Data source=localhost; initial catalog=QLSACH; user=sa ; password=mytomcat;";
    38.            SqlConnection cn = new SqlConnection(ketnoi);
    39.            cn.Open();
    40.            DataSet ds = new DataSet();
    41.            SqlCommand tensach = new SqlCommand("select tensach from sach", cn);
    42.            SqlDataAdapter ad = new SqlDataAdapter(tensach);
    43.            ad.Fill(ds, "ten sach");
    44.            cbxtensach.DataSource = ds;
    45.            cbxtensach.DataBind();
    46.  
    47.            try
    48.            {
    49.                DataSet ds1 = new DataSet();
    50.                SqlCommand a = new SqlCommand("select tentacgia,tennhaxuatban from ((sach inner join vietsach on sach.ms=vietsach.ms) inner join tacgia on vietsach.mtg=tacgia.mtg) inner join nhaxuatban on sach.mnxb=nhaxuatban.mnxb where sach.ms='" + cbxtensach.SelectedValue + "'", cn);
    51.                SqlDataAdapter ad1 = new SqlDataAdapter(a);
    52.                ad1.Fill(ds1, "tacgia va nxb");
    53.                txttentacgia.Text = ds1.Tables[0].Rows[0].ItemArray[0].ToString();
    54.                txttennxb.Text = ds1.Tables[0].Rows[0].ItemArray[1].ToString();
    55.            }
    56.            catch (Exception E)
    57.            { Response.Write(E.Message);}
    58.        }
    59.    }
    60. }
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.
    Geomatics

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

  1. Khắc phục lỗi nhập vào CSDL từ trang web
    Gửi bởi jostruongnd trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 0
    Bài viết cuối: 13-04-2013, 11:35 AM
  2. Lỗi crystal report không load được dữ liệu từ csdl attack khắc phục như thế nào?
    Gửi bởi meotamthe trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 13-11-2011, 12:45 PM
  3. MS SQL với C/C++ Đề tài Hệ quản trị CSDL, ai có cho mình tham khảo với?
    Gửi bởi congdonggiupnhau trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 1
    Bài viết cuối: 13-10-2011, 09:08 PM
  4. Khắc phục lỗi ghi vào CSDL bằng Adapter như thế nào?
    Gửi bởi mouseover trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 15-09-2010, 09:35 PM
  5. chuyển CSDL SQL2005 sang CSDL SQL2000
    Gửi bởi nthung trong diễn đàn Thắc mắc đại cương Database & Reporting
    Trả lời: 1
    Bài viết cuối: 08-04-2009, 02:45 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