各位大虾:
    端午节好!
    我是个刚刚开始接触编程的菜鸟,我想问一个问题:
    怎么用c#连接sqlserver2000,并且做添加,删除数据操作,用DataGrid把数据显示在网页上
                                             谢谢!

解决方案 »

  1.   

    苏老泉,二十七,始发愤,读书籍
    楼主加油怎么用c#连接sqlserver2000,并且做添加,删除数据操作,用DataGrid把数据显示在网页上
    你这个问题可以查MSDN
    或者去Google Baidu都可以,N多了,就不费话了
      

  2.   

    我也是29,刚开始学Asp.Net,同路人啊,多多交流,呵呵.
      

  3.   

    推荐你去网上下载一本叫《亲密接触ASP.NET》的一本电子图书 ,很好的入门教程
      

  4.   

    给lz个DataGrid技巧大全看看,可能有帮助http://article.niq.cn/Html/jisuanji/asp/2005_10_05_11_16_24_0572102380091889_0510511162413324_706.htm
      

  5.   

    http://chs.gotdotnet.com/quickstart/aspplus/default.aspx?url=/quickstart/aspplus/doc/webcontrolsref.aspx
      

  6.   

    看 .Net Framework SDK 中的例子.
      

  7.   

    谁没个开始啊。别急。买书。买开发实例的书。写代码Codeing 。N容易的问题。来几个通宵就搞定了。预祝成功!
      

  8.   

    很简单,在msdn中有现成的例子
      

  9.   


    //连接SQL数据库,并打开
    SqlConnection scnn=new SqlConnection("server=服务器名;uid=用户名;pwd=密码;Initial Catalog=数据库名");
    scnn.Open();
    //建立SQL命令,并执行
    SqlCommand scmd=new SqlCommand("SQL语句",scnn);
    scmd.ExecuteNonQuery();
    //建立填充数据集
    SqlDataAdapter da=new SqlDataAdapter();
    da.SelectCommand =scmd;
    //建立数据集
    DataSet ds=new DataSet();
    //填充数据集
    da.Fill(ds,"student");
    //建立数据表
    DataTable dt=ds.Tables["student"];
    //数据绑定
                 dataGrid1.DataSource=ds;
    //关闭SQL连接
                              scnn.Close();
      

  10.   

    private string strConn
        {
            get
            {
                return System.Configuration.ConfigurationManager.ConnectionStrings["DatabaseConnection"].ToString();
            }
        }
        /// <summary>
        /// 执行一段SQL语句(主要用于增加修改删除等,因为它将返回一个bool)。
        /// true:表示执行成功,false:表示执行失败
        /// </summary>
        /// <param name="commandText">Transact-SQL 语句</param>
        /// <returns>bool</returns>
        public bool ExecuteTxtBool(string commandText)
        {
            //创建一个bool
            bool isSuccess = false;        //定义一个command对象
            SqlCommand cmd = new SqlCommand();
            //导入连接数据库参数,准备执行command        using (SqlConnection cn = new SqlConnection(strConn))
            {
                cn.Open();            try
                {
                    try
                    {
                        //连接数据库
                        cmd.Connection = cn;                    //设置command text 为SQL语句
                        cmd.CommandText = commandText;                    //设置command type
                        cmd.CommandType = CommandType.Text;                    cmd.ExecuteNonQuery();                    //从command对象中清除SqlParmeters,这样他们能够被再次使用
                        cmd.Parameters.Clear();                    //释放资源
                        cmd.Dispose();                    isSuccess = true;
                    }
                    catch
                    {
                        cmd.Dispose();
                    }
                    finally
                    {                    //断开数据库连接,释放占有的资源
                        cn.Close();
                        cn.Dispose();
                    }
                }
                catch
                {
                    cn.Close();
                    cn.Dispose();
                }            //返回 bool
                return isSuccess;
            }
        }
      

  11.   

    /// <summary>
        /// 执行一段SQL语句(主要用于查询等,因为它将返回一个SqlDataReader)
        /// </summary>
        /// <param name="commandText">Transact-SQL 语句</param>
        /// <returns>SqlDataReader</returns>
        public SqlDataReader ExecuteTxtDataReader(string commandText)
        {
            //创建一个bool
            SqlDataReader dr = null;        //定义一个command对象
            SqlCommand cmd = new SqlCommand();
            //导入连接数据库参数,准备执行command
            using (SqlConnection cn = new SqlConnection(strConn))
            {            cn.Open();
                try
                {
                    //连接数据库
                    cmd.Connection = cn;                //设置command text 为SQL语句
                    cmd.CommandText = commandText;                //设置command type
                    cmd.CommandType = CommandType.Text;                dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                }
                catch
                {
                    cmd.Dispose();
                }
            }
            return dr;    }
        /// <summary>
        /// 执行一组SQL语句(主要用于增加修改删除等,因为它将返回一个bool)。
        /// true:表示事务执行成功,false:表示事务执行失败
        /// </summary>
        /// <param name="commandText">sql语句数组</param>
        /// <returns>bool</returns>
        public bool ExecuteMuliTxtBool(string[] commandText)
        {
            //创建一个bool
            bool isSuccess = false;        //定义一个command对象
            SqlCommand cmd = new SqlCommand();
            //导入连接数据库参数,准备执行command
            using (SqlConnection cn = new SqlConnection(strConn))
            {
                cn.Open();            try
                {
                    //连接数据库
                    cmd.Connection = cn;                //建立一个事务
                    SqlTransaction trans = cn.BeginTransaction();                cmd.Transaction = trans;                try
                    {
                        for (int i = 0; i < commandText.Length; i++)
                        {
                            if (commandText[i].Trim() != "")
                            {
                                //设置command text 为SQL语句
                                cmd.CommandText = commandText[i];                            //设置command type
                                cmd.CommandType = CommandType.Text;                            cmd.ExecuteNonQuery();                            //从command对象中清除SqlParmeters,这样他们能够被再次使用
                                cmd.Parameters.Clear();
                            }
                        }
                        trans.Commit();                    isSuccess = true;                    //释放资源
                        cmd.Dispose();
                    }
                    catch
                    {
                        trans.Rollback();
                        cmd.Dispose();
                    }
                    finally
                    {
                        //断开数据库连接,释放占有的资源
                        cn.Close();
                        cn.Dispose();
                    }
                }
                catch
                {
                    cn.Close();
                    cn.Dispose();
                }            //返回 bool
                return isSuccess;
            }
        }
        /// <summary>
        /// 执行一段SQL语句(主要用于查询等,因为它将返回一个DataSet)。
        /// </summary>
        /// <param name="commandText">Transact-SQL 语句</param>
        /// <returns>DataSet</returns>
        public DataSet ExecuteTxtDataSet(string commandText)
        {
            //定义一个command对象
            SqlCommand cmd = new SqlCommand();
            //导入连接数据库参数,准备执行command
            using (SqlConnection cn = new SqlConnection(strConn))
            {            //创建一个DataSet
                DataSet ds = new DataSet();            cn.Open();            try
                {
                    try
                    {
                        //连接数据库
                        cmd.Connection = cn;                    //设置command text 为SQL语句
                        cmd.CommandText = commandText;                    //设置command type
                        cmd.CommandType = CommandType.Text;                    //创建 DataAdapter 
                        SqlDataAdapter da = new SqlDataAdapter(cmd);
                        //填充 DataSet 对于DataTable名称使用缺省值
                        da.Fill(ds);                    //从command对象中清除SqlParmeters,这样他们能够被再次使用
                        cmd.Parameters.Clear();                    //释放资源
                        cmd.Dispose();
                    }
                    catch (System.Exception ee)
                    {
                        ee.ToString();//用于调试
                        cmd.Dispose();
                    }
                    finally
                    {
                        //断开数据库连接,释放占有的资源
                        cn.Close();
                        cn.Dispose();
                    }
                }
                catch
                {
                    cn.Close();
                    cn.Dispose();
                }            //返回 dataset
                return ds;
            }
        }
      

  12.   

    /// <summary>
        /// 执行存储过程(主要用于查询等,因为它将返回一个DataSet)。
        /// </summary>
        /// <param name="storeProcedureName">存储过程名称</param>
        /// <param name="inParameterName">入参名称(string[])</param>
        /// <param name="inParameterValue">入参值,入参必须为一个string[]数组</param>
        /// <returns></returns>
        public DataSet ExecuteSpDataset(string storeProcedureName, string[] inParameterName, string[] inParameterValue)
        {
            //创建DataSet
            DataSet ds = new DataSet();        //定义一个Command对象
            SqlCommand cmd = new SqlCommand();        //导入连接数据库参数,准备执行command
            using (SqlConnection cn = new SqlConnection(strConn))
            {            cn.Open();
                try
                {
                    try
                    {
                        //连接数据库
                        cmd.Connection = cn;                    //设置command text 为存储过程名称
                        cmd.CommandText = storeProcedureName;                    //设置command type
                        cmd.CommandType = CommandType.StoredProcedure;
                        //定义入参
                        for (int i = 0; i < inParameterValue.Length; i++)
                        {
                            SqlParameter p = new SqlParameter((string)inParameterName[i], SqlDbType.Text, 100000);
                            p.Direction = System.Data.ParameterDirection.Input;
                            p.Value = (string)inParameterValue[i];
                            cmd.Parameters.Add(p);
                        }                    //创建 DataAdapter 
                        SqlDataAdapter da = new SqlDataAdapter(cmd);                    //填充 DataSet 对于DataTable名称使用缺省值
                        da.Fill(ds);                    //从command对象中清除SqlParmeters,这样他们能够被再次使用
                        cmd.Parameters.Clear();                    //释放资源
                        cmd.Dispose();
                    }
                    catch
                    {
                        cmd.Dispose();
                    }
                    finally
                    {
                        //断开数据库连接,释放资源
                        cn.Close();
                        cn.Dispose();
                    }
                }
                catch
                {
                    cn.Close();
                    cn.Dispose();
                }
                return ds;
            }
        }
        /// <summary>
        /// 执行存储过程(主要用于增加修改删除等,因为它将返回一个ArrayList)。
        /// 返回值为ArrayList,如果ArrayList[0]="success"并且ArrayList[n]为存储过程返回的成功值,那么表示此方法执行成功。
        /// </summary>
        /// <param name="storeProcedureName">存储过程名称</param>
        /// <param name="inParameterName">入参名称(string[])</param>
        /// <param name="inParameterValue">入参值,入参必须为一个string[]数组</param>
        /// <param name="outParameterName">出参名称(string[])</param>
        /// <param name="outParameterValue">出参的空字符串数组,例如存储过程有两个出参,那么该字段就填 outParameterValue{"",""}</param>
        /// <returns></returns>
        public ArrayList ExecuteSpArrayList(string storeProcedureName, string[] inParameterName, string[] inParameterValue, string[] outParameterName, string[] outParameterValue)
        {
            ArrayList returns = new ArrayList();   //该方法的返回值, 该 ArrayList 的第一项一定是执行的结果。
            returns.Add("success");//设置returns[0]为success;如果返回的returns[0]是success,表示执行成功        SqlConnection myConnection = null;        myConnection = new SqlConnection(strConn);
            try
            {
                myConnection.Open();
            }
            catch
            {
                myConnection.Close();
                myConnection.Dispose();
                returns[0] = "failing";
                return returns;
            }        SqlCommand myCommand = new SqlCommand();
            myCommand.Connection = myConnection;        //收集入参
            for (int i = 0; i < inParameterValue.Length; i++)
            {
                SqlParameter p1 = new SqlParameter((string)inParameterName[i], SqlDbType.Text, 100000);
                p1.Direction = System.Data.ParameterDirection.Input;
                p1.Value = (string)inParameterValue[i];
                myCommand.Parameters.Add(p1);
            }        ArrayList outParameters = new ArrayList();        //收集出参
            for (int i = 0; i < outParameterValue.Length; i++)
            {
                SqlParameter p2 = new SqlParameter((string)outParameterName[i], SqlDbType.VarChar, 5000);
                p2.Direction = System.Data.ParameterDirection.Output;
                myCommand.Parameters.Add(p2);
                outParameters.Add(p2);
            }
            myCommand.CommandType = System.Data.CommandType.StoredProcedure;        myCommand.CommandText = storeProcedureName;        try
            {
                myCommand.ExecuteNonQuery();            //收集出参的值,放入一个 ArrayList 中去 
                for (int i = 0; i < outParameters.Count; i++)
                {
                    returns.Add(((SqlParameter)outParameters[i]).Value.ToString().Trim());
                }
            }
            catch (Exception ee)
            {
                myCommand.Dispose();
                myConnection.Close();
                myConnection.Dispose();
                returns[0] = ee.ToString() + ee.Source;
                return returns;
            }        myCommand.Dispose();
            myConnection.Close();
            myConnection.Dispose();
            returns[0] = "success";        return returns;
        }