一、简单介绍ADO.NET

  System.Data:DataTable,DataSet,DataRow,DataColumn,DataRelation,Constraint

  System.Data.Common(各种数据访问类的基类和接口):DataColumnMapping,DataTableMapping

  System.Data.SqlClient(对Sql Server进行操作的数据访问类):

  1)SqlConnection:数据库连接器

  2)SqlCommand:数据库命名对象

  3)SqlCommandBuilder:生存SQL命令

  4)SqlDataReader:数据读取器

  5)SqlDataAdapter:数据适配器,填充DataSet

  6)SqlParameter:为存储过程定义参数

  7)SqlTransaction:数据库事务

  二、SqlConnection(连接对象)

  1、连接字符串

  基本语法:数据源(Data Source)+数据库名称(Initial Catalog)+用户名(User ID)+密码(Password)。

  说明:

  (1)必须指定Sql Server支持的两种身份验证方法(即Windows身份验证和Sql Server身份验证)中的一种。要想使用Windows身份验证,必须在连接字符串中包括 Integrated Security 属性:Data Source=ServerName;Integrated Security=True;默认情况下,Integrated Security属性为False。

  (2)连接字符串中可用的选项:

  Application Name(应用程序名称):应用程序的名称。如果没有被指定的话,它的值为.NET SqlClient Data Provider(数据提供程序)。

  AttachDBFileName/extended properties(扩展属性)/Initial File Name(初始文件名): 可连接数据库的主要文件的名称,包括完整路径名称。数据库名称必须用关键字数据库指定。

  Connect Timeout(连接超时)/Connection Timeout(连接超时):一个到服务器的连接在终止之前等待的时间长度(以秒计),缺省值为15。

  Connection Lifetime(连接生存时间): 当一个连接被返回到连接池时,它的创建时间会与当前时间进行对比。如果这个时间跨度超过了连接的有效期的话,连接就被取消。其缺省值为0。

  Connection Reset(连接重置): 表示一个连接在从连接池中被移除时是否被重置。缺少值为真。

  Current Language(当前语言): SQL Server语言记录的名称。

  Data Source(数据源)/Server(服务器)/Address(地址)/Addr(地址)/Network Address(网络地址):SQL Server实例的名称或网络地址。

  Encrypt(加密):当值为真时,如果服务器安装了授权证书,SQL Server就会对所有在客户和服务器之间传输的数据使用SSL加密。被接受的值有true(真)、false(伪)、yes(是)和no(否)。

  Enlist(登记):表示连接池程序是否会自动登记创建线程的当前事务语境中的连接,其缺省值为真。

  Database(数据库)/Initial Catalog(初始编目):数据库的名称。

  Integrated Security(集成安全)/Trusted Connection(受信连接):表示Windows认证是否被用来连接数据库。它可以被设置成真、伪或者是和真对等的sspi,其缺省值为伪。

  Max Pool Size(连接池的最大容量): 连接池允许的连接数的最大值,其缺省值为100。

  Min Pool Size(连接池的最小容量): 连接池允许的连接数的最小值,其缺省值为0。

  Network Library(网络库)/Net(网络):用来建立到一个SQL Server实例的连接的网络库。支持的值包括: dbnmpntw (Named Pipes)、dbmsrpcn (Multiprotocol/RPC)、dbmsvinn(Banyan Vines)、dbmsspxn (IPX/SPX)和dbmssocn (TCP/IP)。协议的动态链接库必须被安装到适当的连接,其缺省值为TCP/IP。

  Packet Size(数据包大小):用来和数据库通信的网络数据包的大小。其缺省值为8192。

  Password(密码)/Pwd:与帐户名相对应的密码。

  Persist Security Info(保持安全信息):用来确定一旦连接建立了以后安全信息是否可用。如果值为真的话,说明像用户名和密码这样对安全性比较敏感的数据可用,而如果值为伪则不可用。重置连接字符串将重新配置包括密码在内的所有连接字符串的值。其缺省值为伪。

  Pooling(池):确定是否使用连接池。如果值为真的话,连接就要从适当的连接池中获得,或者,如果需要的话,连接将被创建,然后被加入合适的连接池中。其缺省值为真。

  User ID(用户ID):用来登陆数据库的帐户名。

  Workstation ID(工作站ID):连接到SQL Server的工作站的名称。其缺省值为本地计算机的名称。

  (3)例举典型连接字符串

  1>SQL Server连接字符串

  标准安全连接:

  Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;或者

  Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;Trusted_Connection=False;

  可信连接:

  Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;或者

  Server=myServerAddress;Database=myDatabase;Trusted_Connection=True;

  2> Access连接字符串

  Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:myDatabase.mdb;User Id=admin;Password=;

  3>MySQL连接字符串

  Server=myServerAddress;Database=myDatabase;Uid=myUsername;Pwd=myPassword;

  4>DB2连接字符串

  Server=myAddress:myPortNumber;Database=myDatabase;UID=myUsername;PWD=myPassword;

  5>Oracle连接字符串

  Data Source=TORCL;User Id=myUsername;Password=myPassword;

  2、创建连接对象

  SqlConnectionStringBuilder connectionStringBuilder = new SqlConnectionStringBuilder()

  {

  DataSource = "",

  InitialCatalog = "",

  UserID = "",

  Password = ""

  };

  SqlConnection connection = new SqlConnection(connectionStringBuilder.ToString());

  3、打开和关闭连接对象

  using(SqlConnection connection = new SqlConnection(connectionStringBuilder.ToString()))

  {

  connection.Open();

  connection.Close();

  }

  4、连接池


Rinbowss
7 声望0 粉丝