c#数据库知识点总结

数据提供者Data Provider用来提供DataSet(以同样的方式从不同数据源获得数据,数据源的内存驻留形式)和数据库之间的联系,也包含了存取数据库的一系列接口。包括Sql Server .NET,OleDb.NETOdbc.NET和Oracle.NET。每种有4个核心对象,对象间互相配合完成数据库的连接、操作、交互。

(1)Connection对象:对于不同的.net数据提供者,ADO.NET采用不同的Connection对象连接数据库。这些Connection对我们屏蔽了具体的实现细节,并提供了一种统一的实现方法。
a. Sqlconnetcion类的对象连接是SQL Server数据库;
b. OracleConnection类的对象连接Oracle数据库;
c. OleDbConneetion连接支持OLE DB的数据库,如Access;
d. OdbcConnection类的对象连接支持ODBC的数据库。
与数据库的所有通讯都是通过Connection对象来完成的。包括打开、关闭数据库。

使用方法:
定义连接字符串,字符串中包括服务器名、数据库名、帐户名、密码;创建对应的Connection对象;使用Open()方法打开数据库;

        string constr = "Data Source=(local);Initial Catalog=try;User ID=“”;Password=“";
        SqlConnection con = new SqlConnection(constr);
        con.Open();

(2)Command对象:用于对数据源执行指定指令,一般为不需要返回结果的命令或存储。不同数据提供者Command对象名称不同。不管数据库有无连接均可进行操作。
使用方法:所有实例方法参照构造函数

     string sqlstr="update student set  name='Jone' where name='Bill' ";            
     SqlCommand cmd=new SqlCommand(sqlstr, con);            
     cmd.ExecuteNonQuery();//有其它方法,大同小异            
     con.Close();

(3)DataReader对象:用于从数据库返回只读数据流。该对象提供顺序,以只读的方式读取Command对象获得的数据结果集。正是因为DataReader是以顺序的方式连续地读取数据,所以DataReader会以独占的方式打开数据库连接。
由于DataReader只执行读操作,并且每次只在内存缓冲区里存储结果集的一条数据,所以使用Datareader对象的效率比较高,如果要查询大量数据,同事不需要随机访问和修改数据,DataReader是优先的选择。DataReader对象有许多的属性和方法,具体可查询手册或帮助文档。
使用方法:

         SqlCommand cmd= new SqlCommand(sqlstr, con);//创建Command对象 
         SqlDataReader dr =cmd.ExecuteReader();//执行查询 
         if (dr.HasRows)//判断数据表中是否含有数据 
          { 
              Console.WriteLine("manager数据表中含有数据"); 
          } 
         else 
          { 
              Console.WriteLine("manager数据表中没有数据"); 
          }  

(4)数据适配器DataAdapter对象:数据适配器是 ADO.NET 托管提供程序(一组用于数据源与数据集之间的通信的对象)的组成部分,用于在应用程序和数据库之间交换操作数据,数据集可以看作数据源的内存驻留形式。

在这里插入图片描述
适配器是数据源和数据集的桥梁。使用方法:不唯一,详细参照构造函数

           string strConnection = "provider=microsoft.jet.oledb.4.0;data source="" ;" ;
           OleDbConnection conn = new OleDbConnection(strConnection);  //定义连接对象
           conn.Open();
           string query = " select * from Tstudent ";
           OleDbDataAdapter myadapter = new OleDbDataAdapter(query, conn); //执行SQL语句
           DataSet ds = new DataSet();//新建数据集
           myadapter.Fill(ds);//向DataSet中的表填充数据集
           dataGridView1.DataSource = ds.Tables[0];//交互界面,显示到控件中

适配器除在实例化对象时就赋值操作命令外,还可以利用属性赋SQL语句。包括SelectCommand 、InsertCommand 、UpdateCommand 、DeleteCommand属性。例如:

      SqlDataAdapter da = new SqlDataAdapter();             
      SqlCommand cmd1 = new SqlCommand("select * from dbo.Tstu", con);
      da.SelectCommand = cmd1;

至此,c# 连接操作数据库知识点总结完毕。

猜你喜欢

转载自blog.csdn.net/qq_39967296/article/details/89440246