ADO.NET数据库学习

下面记录一下对基于c#操作mysql数据库的学习。
1.数据库的连接

String connectStr = "server=;port=;user=;password=; database=;charset=utf8";
                MySqlConnection con = new MySqlConnection(connectStr);
                con.Open();

2.SQL语句的执行

				MySqlCommand cmd = new MySqlCommand();
                cmd.Connection = con;
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = "select * from student"
                int i=Convert.ToInt32(cmd.ExecuteScalar())//执行语句并获取指定的表中数据量,常与聚合函数配合使用
                int ii=Convert.ToInt32(cmd.ExecuteNonQuery())//执行语句并返回受影响的行数
                MySqlDataReader sdr=cmd.ExecuteReader();//执行语句并获取指定的表
                while(sdr.Read())//遍历方法
            {
                listView1.Items.Add(sdr["总分"].ToString());
            }
                

3.DataReader 的使用
sdr.HasRow可判断数据中是否有值,注意针对一个数据库,创建多个sdr,则在创建下一个前,要用sdr.close()关闭上一个sdr。
4.DataAapter的使用
数据的存储:

                MySqlCommand cmd = new MySqlCommand();
                cmd.Connection = con;
                sda = new MySqlDataAdapter();
                ds = new DataSet();
                sda.SelectCommand = cmd;//获取cmd语句
                cmd.CommandText = "select * from course_2";
                sda.Fill(ds, "course_2");//执行并将表存储于ds中

数据的更新:

				DataTable dt = ds.Tables["course_2"];
                sda.FillSchema(dt, SchemaType.Mapped);
                DataRow dr = dt.Rows.Find(textBox2.Text);
                dr["course"] = textBox3.Text.Trim();
                dr["type"] = textBox4.Text.Trim();
                dr["credit"] = textBox5.Text.Trim();
                MySqlCommandBuilder cmdb = new MySqlCommandBuilder(sda);
                //sda.UpdateCommand = cmdb.GetUpdateCommand();
                sda.Update(dt);

5.datatable datarow datacolumn 的使用

			DataTable dt = ds.Tables["pro3"];//去除dataset中的pro3表
            string a = dt.TableName;
            MessageBox.Show(a);
           // DataColumn dc = dt.Columns["总分"];
           
            DataRow dr = dt.NewRow();//为pro3添加行
            sda.FillSchema(dt, SchemaType.Mapped);
            /*dr["姓名"] = "dfs";
            dr["编号"] = 32438;
            dr["专业组"] = "土木";
            dr["总分"] = 680;
            dt.Rows.Add(dr);*/

            DataRow[] dr2 = dt.Select("编号=195360");//可以选取满足条件的多个行
            MessageBox.Show(dr2[0][0].ToString());
             
            DataColumn dcc = new DataColumn();//为表添加一个列
            dcc.ColumnName = "学校";
            dcc.DataType = typeof(string);
            dt.Columns.Add(dcc);
            
            MySqlCommandBuilder cmdb = new MySqlCommandBuilder(sda);//执行更新操作
            sda.Update(dt);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

19lrf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值