zoukankan      html  css  js  c++  java
  • 怎样使用ADO.NET连接不同的数据源

    使用ADO.NET可以连接SQL Server,Access,Excel,XML等数据库,首先创建连接,然后使用连接.使用时先打开连接,然后使用,最后记得要关闭连接.下面分别介绍一下:
    1.连接SQL Server
    需要using System.Data;和using System.Data.SqlClient;两个命名空间.从创建到使用完整代码:

      string strConnection="server=(local);database=YourDatabase;integrated security=true;";
      //若你的数据库服务器使用混合模式验证则用
      //string strConnection="server=(local);database=YourDatabase;user id=sa;password=123456;";
      //string strConnection="server=(local);database=YourDatabase;uid=sa;pwd=123456;";
      
      SqlConnection con=new SqlConnection(strConnection);//创建连接
      
      string strSql="SELECT FirstName,LastName,Country FROM Employees";
      SqlCommand cmd=new SqlCommand(strSql,con);

      con.Open();//打开数据库连接
      gvList.DataSource=cmd.ExecuteReader();//设置GridView控件数据源
      gvList.DataBind();//绑定数据到GridView控件
      con.Close();//关闭连接

    通常strConnection="server=(local);database=YourDatabase;integrated security=true;";连接字符串会放在Web.config文件中.在<configuration></configuration>中设置.
    例如:<configuration>
        <appSettings>
         <add key="strConnection" value="server=(local);database=YourDatabase;integrated security=true;" />
        </appSettings>
         <system.web>
         ......
         </system.web>
       </configuration>
    或者::<configuration>
        <connectionStrings>
         <add name="BBS" connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|BBS.mdf" providerName="System.Data.SqlClient" />
        </connectionStrings>
         <system.web>
         ......
         </system.web>
       </configuration>
    使用时,using System.Configuration;命名空间.
     前者:string strCon=ConfigurationSettings.AppSettings["strConnection"].ToString();
     后者:string strCon=ConfigurationManager.ConnectionStrings["BBS"].ConnectionString

    2.连接Access
    需要using System.Data;和using System.Data.OleDb;两个命名空间.从创建到使用完整代码:

      string strConnection="Provider=Microsoft.Jet.OLEDB.4.0;Data source=E:\YourDatabase.mdb;";
        
      OleDbConnection con=new OleDbConnection(strConnection);//创建连接
      
      string strSql="SELECT FirstName,LastName,Country FROM Employees";
      OleDbCommand cmd=new OleDbCommand(strSql,con);

      con.Open();//打开数据库连接
      gvList.DataSource=cmd.ExecuteReader();//设置GridView控件数据源
      gvList.DataBind();//绑定数据到GridView控件
      con.Close();//关闭连接


    3.连接Excel
    需要using System.Data;和using System.Data.OleDb;两个命名空间.从创建到使用完整代码:

      string strConnection="Provider=Microsoft.Jet.OLEDB.4.0;Data source=E:\YourDatabase.xls;Extended Properties=Excel 8.0;";
        
      OleDbConnection con=new OleDbConnection(strConnection);//创建连接
      
      string strSql="SELECT FirstName,LastName,Country FROM Employees";
      OleDbCommand cmd=new OleDbCommand(strSql,con);

      con.Open();//打开数据库连接
      gvList.DataSource=cmd.ExecuteReader();//设置GridView控件数据源
      gvList.DataBind();//绑定数据到GridView控件
      con.Close();//关闭连接


    4.连接XML数据源
    {
      string strXMLFile="E:\YourXMLFile.xml";
      DataSet dataSet=new DataSet();
      dataSet.ReadXml(strXMLFile);

      dvList.DataSource=dataSet.Tables[0].DefaultView;
      dvList.DataBind();
    }

    5.Connection对象的其他属性
      ①Connction timeout等待打开连接的时间,默认值是15秒,这一时间足以找到服务器,确定数据库存在,验证安全权限,建立通信通道.若不能在15秒内完成,那将超时.若不够,可以增加值.
    例如:string strConnection="server=(local);database=Northwind;integared security=true;connection timeout=30;";
      ②packet size数据包大小,默认值是8192字节,这有时会大于所需要的,若请求发送的数据少时,可以降低数据包大小,这样会提高性能.
    例如,string strConnection="server=(local);database=Northwind;integared security=true;packet size=512;";

    6.Connection对象的方法
      ①ChangeDatabase(),允许切换到同一服务器的不同数据库,而不必关闭连接.
    例如:string strConnection="server=(local);database=Northwind;integared security=true;";
       SqlConnection con=new SqlConnection(strConnection);
       string strSql="SELECT * FROM Employees";
       SqlCommand cmd=new SqlCommand(strSql,con);
       con.Open();
       con.ChangeDataBase("Master");
       con.Close();
      ②BeginTransaction(),这个是最重要的方法.通过它获取一个事务处理对象.
    例如:......//创建连接代码略
       SqlTransaction tran;
       con.Open();
       tran=con.BeginTransaction();

  • 相关阅读:
    UVA1394 And Then There Was One
    delphi编程CRC算法的实现,以下是全部的代码
    SQLite学习手册(临时文件)
    SQLite学习手册(实例代码<一>)
    SQLite学习手册(锁和并发控制)
    Delphi中比较两个字符串相似性的百分比算法
    SQLite学习手册(内存数据库)
    delphi 读取网卡mac的3种方式
    从内存中加载并运行exe
    Windows消息机制要点
  • 原文地址:https://www.cnblogs.com/tdalcn/p/675526.html
Copyright © 2011-2022 走看看