Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3304630
  • 博文数量: 266
  • 博客积分: 3081
  • 博客等级: 中校
  • 技术积分: 2640
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-04 10:35
个人简介

没什么好介绍的!穷屌丝一个~

文章分类

全部博文(266)

文章存档

2021年(3)

2020年(1)

2019年(2)

2016年(5)

2015年(1)

2014年(1)

2011年(9)

2010年(16)

2009年(31)

2008年(58)

2007年(111)

2006年(2)

2005年(26)

我的朋友

分类: C/C++

2008-09-21 08:43:27

数据库用的是本地服务器(MySql):

设定全局变量:

        MySqlConnection conn;
        MySqlDataAdapter adapter;
        MySqlTransaction trans;

1.  // 数据库联接

        private System.Data.DataTable dbconn(string strSql)
        {
            string strconn = "host=localhost;database=test;user id=root;password=";
            conn = new MySqlConnection();
            conn.ConnectionString = strconn;
            conn.Open();
            this.adapter = new MySqlDataAdapter(strSql, conn);
            System.Data.DataTable dtSelect = new System.Data.DataTable();
            int rnt=this.adapter.Fill(dtSelect);
            conn.Close();
            return dtSelect;
                              
        }

2.       //设定DataGridView的样式 

       private void setDgStyle()
        {
            this.dgselect.Columns.Clear();

            DataGridViewCheckBoxColumn colDel = new DataGridViewCheckBoxColumn();
            colDel.DataPropertyName = "Del";
            colDel.Name = "Del";
            colDel.Selected = false;
            colDel.FalseValue = "0";
            colDel.TrueValue = "1";
            colDel.Width = 40;
            colDel.SortMode = DataGridViewColumnSortMode.NotSortable;
            colDel.HeaderText = "删除";
            colDel.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            colDel.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dgselect.Columns.Insert(0, colDel);

            DataGridViewTextBoxColumn colID = new DataGridViewTextBoxColumn();
            colID.DataPropertyName = "ProductsSpecID";
            colID.Name = "ProductsSpecID";
            colID.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            colID.HeaderText = "产品规格ID";
            colID.Width = 160;
            this.dgselect.Columns.Insert(1, colID);

            DataGridViewTextBoxColumn colNM = new DataGridViewTextBoxColumn();
            colNM.DataPropertyName = "ProductsSpec";
            colNM.Name = "ProductsSpec";
            colNM.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            colNM.HeaderText = "产品规格名称";
            colNM.Width = 160;
            this.dgselect.Columns.Insert(2, colNM);

            DataGridViewTextBoxColumn colUnit = new DataGridViewTextBoxColumn();
            colUnit.DataPropertyName = "ProductsSpecUnit";
            colUnit.Name = "ProductsSpecUnit";
            colUnit.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            colUnit.HeaderText = "产品规格单位";
            colUnit.Width = 180;
            this.dgselect.Columns.Insert(3, colUnit);

            DataGridViewTextBoxColumn colPID = new DataGridViewTextBoxColumn();
            colPID.DataPropertyName = "ProductsID";
            colPID.Name = "ProductsID";
            colPID.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            colPID.HeaderText = "产品ID";
            colPID.Width = 140;
            this.dgselect.Columns.Insert(4, colPID);

            DataGridViewButtonColumn colButton = new DataGridViewButtonColumn();
            colButton.DataPropertyName = "colSearch";
            colButton.Name = "colSearch";
            colButton.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            colButton.HeaderText = "Button";
            colButton.Width = 80;
            this.dgselect.Columns.Insert(5, colButton);

            this.dgselect.RowHeadersWidth = 15;
            this.dgselect.ColumnHeadersDefaultCellStyle.Font=new System.Drawing.Font("宋体",14);
                    
        }

3.   //修改数据,并将数据提交到数据库

private Boolean dbUpdate()
        {
            string strSql = "select ProductsSpecID,ProductsSpec,ProductsSpecUnit,ProductsID from                       tbl_product_detail_master";
            System.Data.DataTable dtUpdate = new System.Data.DataTable();
            dtUpdate = this.dbconn(strSql);
            dtUpdate.Rows.Clear();

            System.Data.DataTable dtShow = new System.Data.DataTable();
            //dtShow = (DataTable)this.bindSource.DataSource;
            dtShow = (System.Data.DataTable)this.dgselect.DataSource;

            int p1 = dtShow.Rows.Count;
           // try
           // {

                for (int i = 0; i < dtShow.Rows.Count; i++)
                {
                   DataRowState rowState=new DataRowState();
                   rowState=dtShow.Rows[i].RowState;
                   if (rowState==DataRowState.Added || rowState==DataRowState.Detached || rowState==DataRowState.Modified)
                    {

                        if (this.dgselect["Del", i].Value.ToString() == "1")
                        {
                            dtShow.Rows[i].Delete();
                        }
                    }
                }
               
            for (int i = 0; i < dtShow.Rows.Count; i++)
            {
                dtUpdate.ImportRow(dtShow.Rows[i]);
            }
            int num = dtUpdate.Rows.Count;
            try
            {
                this.conn.Open();
               
                trans = this.conn.BeginTransaction();

                MySqlCommandBuilder CommandBuiler;
                CommandBuiler = new MySqlCommandBuilder(this.adapter);

                this.adapter.Update(dtUpdate);
                trans.Commit();
                this.conn.Close();

            }
            catch ( Exception  ex)
            {
                MessageBox.Show(ex.Message.ToString());
                trans.Rollback();
                return false;
            }

            dtUpdate.AcceptChanges();
             return true;

        }

阅读(1241) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~