Bạn ghé thăm diễn đàn lần đầu? hãy đăng ký ngay bây giờ để tham gia.
  • Đăng nhập:

Chào mừng bạn đến với ITVNN FORUM - Diễn đàn công nghệ thông tin.

Nếu đây là lần đầu tiên bạn tham gia diễn đàn, xin mời bạn xem phần Hỏi/Ðáp để biết cách dùng diễn đàn. Để có thể tham gia thảo luận bạn phải đăng ký làm thành viên, click vào đây để đăng ký.


  • Partner Area
    • ITVNN HOSTING - Thiết kế website, Cung cấp Domain, Hosting, VPS Việt Nam Anh Hùng - Thông tin truyền thông
kết quả từ 1 tới 3 trên 3
Tăng kích thước phông chữ Giảm kích thước phông chữ
  1. #1
    anhduong123's Avatar

    Trạng thái
    Offline
    Tham gia ngày
    Mar 2010
    Thành viên thứ
    12028
    Tuổi
    37
    Giới tính
    Bài gởi
    5
    Level: 20 [?]
    Experience: 25,811
    Next Level: 29,658
    Cảm ơn 0
    Cảm ơn 0 lần / 0 Bài viết

    Default lỗi khi code C# giúp em với  

    em đang code bài quản lý sinh viên
    form của em gồm 3 buttom thêm sưa xóa
    thêm và xóa đã ok rồi nhưng khi muốn sửa 1 sinh viên thì nó hiện lỗi sau:
    The SqlParameterCollection only accepts non-null SqlParameter type objects.
    Parameter name: value
    cụ thể
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;


    namespace QUANLYSINHVIEN
    {
    class SinhVienDao
    {

    SqlConnection bkn = new SqlConnection(@"server=duongk5\sqlexpress;database =QUANLYSINHVIEN;user=sa;password=123456");

    public DataTable view_text(string s)
    {
    bkn.Open();
    SqlDataAdapter da = new SqlDataAdapter(s, bkn);
    DataTable dt = new DataTable();
    da.Fill(dt);
    bkn.Close();
    return dt;

    }
    public void proc_TS(string s, SqlParameter[] sp)
    {

    bkn.Open();
    SqlCommand cmd = new SqlCommand(s, bkn);
    cmd.CommandType = CommandType.StoredProcedure;
    foreach (SqlParameter s1 in sp)
    {
    cmd.Parameters.Add(s1);// lỗi tại đây
    }
    cmd.ExecuteNonQuery();

    bkn.Close();
    }
    }
    }
    pro nào giúp em với

  2. #2
    hanhkhat's Avatar

    Trạng thái
    Offline
    Tham gia ngày
    Sep 2009
    Thành viên thứ
    20
    Tuổi
    36
    Giới tính
    Bài gởi
    1,785
    Level: 49 [?]
    Experience: 9,542,743
    Next Level: 10,000,000
    Cảm ơn 448
    Cảm ơn 481 lần / 345 Bài viết

    Default

    đây là cái DBExcute của mình. Bạn tham khảo nhé
    Code: 
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    using System.Configuration;
    
    namespace DataAccess
    {
        public abstract class DBExecute
        {
            public abstract DataTable Execute_Table(string Text, SqlParameter[] para, CommandType cmdType);
            public abstract DataTable Execute_Table1(string Text, SqlParameter[] para, CommandType cmdType);
            public abstract IDataReader Execute_DataReader(string Text, SqlParameter[] para, CommandType cmdType);
            public abstract DataSet Execute_Tables(string Text, SqlParameter[] para, CommandType cmdType);
            public abstract object Execute_Object(string Text, SqlParameter[] para, CommandType cmdType);
            public abstract int Execute_Modify(string Text, SqlParameter[] para, CommandType cmdType);
        }
        public class SQLExecute : DBExecute
        {
            SqlConnection cnn;
            string connectionString;
            public SQLExecute()
            {
                this.connectionString = ConfigurationSettings.AppSettings["SqlConnectionString"];
            }
    
            public SQLExecute(string SqlConnectionString)
            {
                this.connectionString = SqlConnectionString;
            }
            public override DataTable Execute_Table(string Text, SqlParameter[] para, CommandType cmdType)
            {
                using (cnn = new
                SqlConnection(this.connectionString))
                {
                    SqlCommand cmd = new SqlCommand(Text, cnn);
                    cmd.CommandType = cmdType;
                    if (para != null)
                        cmd.Parameters.AddRange(para);
                    DataTable table = new DataTable();
                    cnn.Open();
                    table.Load(cmd.ExecuteReader());
                    return table;
                }
            }
    
            public override DataTable Execute_Table1(string Text, SqlParameter[] para, CommandType cmdType)
            {
                using (cnn = new
                SqlConnection(this.connectionString))
                {
                    SqlCommand cmd = new SqlCommand(Text, cnn);
                    cmd.CommandType = cmdType;
                    if (para != null)
                        cmd.Parameters.AddRange(para);
                    DataTable table = new DataTable();
                    cnn.Open();
                    SqlDataAdapter da = new SqlDataAdapter(cmd);
                    da.Fill(table);
                    return table;
                }
            }
            public override IDataReader Execute_DataReader(string Text, SqlParameter[] para, CommandType cmdType)
            {
                try
                {
                    cnn = new SqlConnection(this.connectionString);
                    SqlCommand cmd = new SqlCommand(Text, cnn);
                    cmd.CommandType = cmdType;
                    if (para != null)
                        cmd.Parameters.AddRange(para);
                    cnn.Open();
                    return cmd.ExecuteReader(CommandBehavior.CloseConnection);
                }
                catch
                {
                    return null;
                }
                finally
                {
    
                }
            }
            public override DataSet Execute_Tables(string Text, SqlParameter[] para, CommandType cmdType)
            {
                using (cnn = new
                SqlConnection(this.connectionString))
                {
                    SqlCommand cmd = new SqlCommand(Text, cnn);
                    cmd.CommandType = cmdType;
                    if (para != null)
                        cmd.Parameters.AddRange(para);
                    DataSet ds = new DataSet();
                    cnn.Open();
                    SqlDataAdapter da = new SqlDataAdapter(cmd);
                    da.Fill(ds);
                    return ds;
                }
            }
            public override int Execute_Modify(string Text, SqlParameter[] para, CommandType cmdType)
            {
                using (cnn = new
                SqlConnection(this.connectionString))
                {
                    SqlCommand cmd = new SqlCommand(Text, cnn);
                    cmd.CommandType = cmdType;
                    if (para != null)
                        cmd.Parameters.AddRange(para);
                    cnn.Open();
                    return cmd.ExecuteNonQuery();
                }
            }
            public override object Execute_Object(string Text, SqlParameter[] para, CommandType cmdType)
            {
                using (cnn = new
                SqlConnection(this.connectionString))
                {
                    SqlCommand cmd = new SqlCommand(Text, cnn);
                    cmd.CommandType = cmdType;
                    if (para != null)
                        cmd.Parameters.AddRange(para);
                    cnn.Open();
                    return cmd.ExecuteScalar();
                }
            }
        }
    }
    Cái gì cũng biết có 1 chút.
    I'm phúc cùi bắp

  3. #3
    hanhkhat's Avatar

    Trạng thái
    Offline
    Tham gia ngày
    Sep 2009
    Thành viên thứ
    20
    Tuổi
    36
    Giới tính
    Bài gởi
    1,785
    Level: 49 [?]
    Experience: 9,542,743
    Next Level: 10,000,000
    Cảm ơn 448
    Cảm ơn 481 lần / 345 Bài viết

    Default

    có thể là nó khác nhau chỗ add và addrange.
    bạn thay
    cmd.Parameters.Add(s1);
    thành
    cmd.Parameters.AddRange(s1);
    thử xem nhé


 

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Trả lời: 1
    Bài mới gởi: 05-04-2012, 11:24 AM
  2. Tổng Hợp CODE LOVE - CODE TÌNH YÊU - CODE VALENTINE.
    By meebovn in forum HTML / Java / JavaScript / JSP
    Trả lời: 1
    Bài mới gởi: 28-01-2011, 09:45 AM
  3. Trả lời: 0
    Bài mới gởi: 07-09-2010, 02:00 AM
  4. Trả lời: 9
    Bài mới gởi: 23-08-2010, 05:21 PM
  5. Trả lời: 12
    Bài mới gởi: 22-06-2010, 08:51 PM

Tags for this Thread

Bookmarks

Quuyền Hạn Của Bạn

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể chỉnh sửa bài viết
  •