您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > C#常用数据库操作方法整理
C#常用操作数据方法整理usingSystem.Data.SqlClient;//导入sql数据库命名空间,这样可以用sql数据库操作相关类StringConnectionStr=server=.;database=数据库名;uid=sa;pwd=123456;;//数据库连接字符串,server确定数据库服务器名,database定义数据库名,uid定义数据库使用者用户名,pwd为密码。SqlConnectionconn=newSqlConnection(ConnectionStr);//建立数据库连接,只有建立连接了才能操作数据。//也可以合在一起:SqlConnectionconn=newSqlConnection(“server=.;database=数据库名;uid=sa;pwd=123456;”);StringSQLString=“”;//数据操作语句放在双引号中,语句有增,删,改,查操作。SqlCommandcomm=newSqlCommand(SQLString,conn);//建立数据库命令,确定sql数据操作语句,和数据库连接。//也可以合并,SqlCommandcomm=newSqlCommand(“数据库操作语句”,conn);conn.Open();//打开数据库,只有打开数据库,数据库命令才能被执行。introws=comm.ExecuteNonQuery();SqlDataReaderdr=comm.ExecuteReader();//专门用于读取数据库数据Objectresult=comm.ExecuteScalar();//或stringresult=Cmd.ExecuteScalar().Tostring();//执行数据库命令://ExecuteNonQuery()用于增,删,改操作,返回受影响的行数;//ExecuteReader()用于查操作,返回一个SqlDataReader类的对象;//comm.ExecuteScalar()执行查找,返回从数据表中查询结果的第一行第一个单元格的数据。conn.Close();//关闭数据库连接,释放资源。否则,将一直连接数据库,别的代码无法跟数据库连接,这样别的代码无法操作数据。SqlParameterMyParameter=newSqlParameter(@Content,SqlDbType.NText);//sql参数:参数名为MyParameter,他对应@Content变量,该变量的值由MyParameter获得,给MyParameter赋值等于给@Content变量赋值,但无法直接给@Content变量赋值。构造函数第二个参数定义变量类型。@Content变量可用于sql操作语句。MyParameter.Value=Content;//给sql参数赋值。Cmd.Parameters.Add(MyParameter);//把sql参数放到comm的参数列别中,这样sql参数对应的变量就能被sql语句调用了。conn.Open()SqlDataReaderdr=Cmd.ExecuteReader();while(dr.Read()){//利用dr[索引]对数据表里的数据进行操作,每次循环将读取数据表中一行数据,从上往下依次执行,直到读完为止。//dr[索引]返回类型为object//可以用数据表属性列名做为索引,也可以根据select后的属性列顺序号为索引,序号从0开始}dr.Close();//必须在关闭数据库前关闭数据库读命令conn.Close();//关闭数据库连接。SqlDataAdapterda=newSqlDataAdapter(SQLString,conn);//定义数据桥接器,用于向数据表中填充数据,自己完成数据库打开与关闭,不需要conn.Open()和conn.Close()DataTabledt=newDataTable();//定义数据表DataSetds=newDataSet();//定义数据集,数据集里放多个数据表da.Fill(ds);//往数据集里填数据,假如数据集里没有表,将产生一个表,放在集合的最前面。也可以写成da.Fill(ds,“表名”);这个对数据集中无论有多表还是单表都有效da.Fill(dt);//往数据表里填数据//可以通过ds.Tables.Add(dt);往数据集里加数据表//可以通过ds.Tables[索引]来获得数据表。索引可是是序号,也可以是表的别名//dt.Rows[][].ToString();//Rows第一个下标为数据在数据表中的行号,第二个下标为数据在那行中的列号。//ds.Tables[索引].Rows[][].ToString();//有了DataTable对象,就可以生成DataView对象//DataViewdv=newDataView(dt);//DataViewdv=dt.DefaultView;//DataViewdv=ds.Tables[0].DefaultView;DataTabledt=newDataTable(dt);//定义DataTable对象da.Fill(dt);//用SqlDataAdapter对象给DataTable对象填充数据DataViewdv=newDataView(dt);//在建立了DataTable对象的基础上定义DataView对象dv.RowFilter=shuxue80andyuwen80;//对查询出来的数据利用DataView对象的RowFilter属性进一步对数据进行筛选。dv.Sort=zongfendesc;//对查询出来的数据利用DataView对象的Sort属性进一步对数据进行排序。this.GridView1.DataSource=dv;//dv作为数据源,赋值给GridView1this.GridView1.DataBind();//将数据源数据绑定到GridView1(winform不需要,网页中需要)//以上可以作为数据源的有SqlDataReader对象,DataTable对象,DataSet对象,DataView对象,即可以赋值给控件的DataSource属性。//方法贵在活用,上面涉及的类中还有别的操作方法,暂不整理。//以下是以上方法的代表性使用第一种:DataTable对象查询数据SqlConnectionconn=newSqlConnection(server=.;database=student;uid=sa;pwd=123456;);SqlDataAdapterda=newSqlDataAdapter(select*fromkaoshi,conn);DataTabledt=newDataTable();da.Fill(dt);this.GridView1.DataSource=dt;this.GridView1.DataBind();第二种:DataSet对象查询数据SqlConnectionconn=newSqlConnection(server=.;database=student;uid=sa;pwd=123456;);SqlDataAdapterda=newSqlDataAdapter(select*fromkaoshi,conn);DataSetds=newDataSet();da.Fill(ds);this.GridView1.DataSource=ds;//this.GridView1.DataSource=ds.Tables[0];//这种数据源赋值语句都可以this.GridView1.DataBind();第三种:DataTable对象与DataSet对象查询数据1SqlConnectionconn=newSqlConnection(server=.;database=student;uid=sa;pwd=123456;);SqlDataAdapterda=newSqlDataAdapter(select*fromkaoshi,conn);DataTabledt=newDataTable();//DataTabledt=newDataTable(cj);//定义一个有别名的数据表,da.Fill(dt);DataSetds=newDataSet();ds.Tables.Add(dt);this.GridView1.DataSource=ds;//this.GridView1.DataSource=ds.Tables[0];//这种数据源赋值语句都可以(只有一个表)//this.GridView1.DataSource=ds.Tables[cj];//别名作为索引(有若干个表)//this.GridView1.DataSource=ds.Tables[2];//序号作为索引(ds中的第三个表)this.GridView1.DataBind();第四种:DataTable对象与DataSet对象查询数据2SqlConnectionconn=newSqlConnection(server=.;database=student;uid=sa;pwd=123456;);SqlDataAdapterda=newSqlDataAdapter(select*fromkaoshi,conn);DataTabledt=newDataTable(cj);//定义一个有别名的数据表,DataSetds=newDataSet();ds.Tables.Add(dt);da.Fill(ds,cj);this.GridView1.DataSource=ds;//this.GridView1.DataSource=ds.Tables[0];//这种数据源赋值语句都可以(只有一个表)//this.GridView1.DataSource=ds.Tables[cj];//别名作为索引(有若干个表)//this.GridView1.DataSource=ds.Tables[2];//序号作为索引(ds中的第三个表)this.GridView1.DataBind();第五种:DataView对象查询数据SqlConnectionconn=newSqlConnection(server=.;database=student;uid=sa;pwd=123456;);SqlDataAdapterda=newSqlDataAdapter(select*fromkaoshi,conn);DataTabledt=newDataTable();da.Fill(dt);DataViewdv=dt.DefaultView;//DataViewdv=newDataView(dt);//DataViewdv=dt.DefaultView;//DataViewdv=ds.Tables[0].DefaultView;dv.RowFilter=shuxue80andyuwen80;dv.Sort=zongfendesc;this.GridView1.DataSource=dv;this.GridView1.DataBind();第六种:SqlDataReader对象进行数据查询1SqlConnectionconn=newSqlConnection(server=.;database=student;uid=sa;pwd=123456;);SqlCommandcomm=newSqlCommand(select*fromkaoshi,conn);conn.Open();SqlDataReaderdr=comm.ExecuteReader();this.GridView1.DataSource=dr;this.GridView1.DataBind();dr.Close();conn.Close();第七种:SqlDataReader对象进行数据查询2SqlConnectionconn=newSqlConnect
本文标题:C#常用数据库操作方法整理
链接地址:https://www.777doc.com/doc-4694382 .html