当前位置:编程学习 > asp >>

[MrYoung教程:易学之道]1ADONET基础及登录模块的实现 1-2

一、上文回顾
  在本系列的第一篇[MrYoung教程:易学之道]1ADONET基础及登录模块的实现 1-1中我们首先了解了关系型数据库的概念,然后学习了如何使用企业管理器建立数据库表和添加数据,最后了解了基础的SQL语句:查询,增加,修改,删除的用法,在本节我们将详细讲解如何去实现一个登陆窗体,从而开始入门ADO.NET编程

二、System.Data.SqlClient 命名空间
  System.Data.SqlClient 命名空间是 SQL Server 的 .NET Framework 数据提供程序。

  SQL Server 的 .NET Framework 数据提供程序描述了一个类集合,这个类集合用于访问托管空间中的 SQL Server 数据库。使用 SqlDataAdapter 可以填充驻留在内存中的 DataSet,该数据集可用于查询和更新数据库。

  主要类如下:

  2.1 在操作数据库之前,必须引用System.Data.SqlClient。这个类集合用于访问托管空间中的 SQL Server 数据库。

  2.2 SqlConnection类,表示SQL Server 数据库的一个打开的连接。

  2.3 SqlCommand类,表示要对SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程。

  2.4 SqlDataAdapter类,表示用于填充 DataSet和更新 SQL Server 数据库的一组数据命令和一个数据库连接。

  2.5 SqlDataReader类,提供一种从 SQL Server 数据库读取行的只进流的方式。

三、SqlConnection
  在任何数据库操作之前,均需要建立一个数据库连接,而SqlConnection表示 SQL Server 数据库的一个打开的连接.

  3.1 连接字符串:packet size=4096;data source=数据地址;persist security info=True;initial catalog=数据库名;user id=用户名;pwd=用户密码,如  

 

view sourceprint?1              string sqlcon = "packet size=4096;data source=127.0.0.1;persist security info=True;initial catalog=Db_Example;user id=sa";

 


  3.2 SqlConnection 构造函数 (String 连接字符串),如果给定包含连接字符串的字符串,则初始化 SqlConnection 类的新实例



view sourceprint?1 string sqlcon = "packet size=4096;data source=127.0.0.1;persist security info=True;initial catalog=Db_Example;user id=sa"; 

2 SqlConnection myCon = new SqlConnection(sqlcon);

 

  3.3 SqlConnection.Open 方法,打开数据库连接。

  3.4 SqlConnection.Close 方法,关闭数据库连接。

  3.5 SqlConnection.Dispose 方法,释放资源。

四、SqlCommand
  表示要对 SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程。无法继承。

  4.1 SqlCommand 构造函数 (String 查询文本, SqlConnection 一个到数据库的实例连接)。

view sourceprint?1 SqlCommand sqlcom = new SqlCommand("insert into tb_user values(Mryoung,123456)", sqlcon);

  4.2 SqlCommand.ExecuteNonQuery 方法,执行 Transact-SQL INSERT、DELETE、UPDATE 及 SET 语句等命令。

  4.3 SqlCommand.ExecuteReader 方法 (CommandBehavior),返回一个SqlDataReader对象。如果创建了 SqlDataReader并将 CommandBehavior设置为 CloseConnection,则关闭 SqlDataReader会自动关闭此连接。

view sourceprint?1 SqlConnection sqlcon = this.getcon(); 

2 SqlCommand sqlcom = new SqlCommand(str_sql, sqlcon); 

3 sqlcon.Open(); 

4 SqlDataReader sqlread = sqlcom.ExecuteReader(CommandBehavior.CloseConnection);

  4.4 SqlCommand.Dispose方法,释放资源。

  4.5 SqlCommand.Close方法,关闭连接。

五、SqlDataReader
  提供一种从 SQL Server 数据库读取行的只进流的方式。无法继承此类。他使得我们可以得到查询的结果。

  5.1 由SqlCommand.ExecuteReader 方法创建。

  5.2 SqlDataReader.Read 方法,使 SqlDataReader前进到下一条记录,因为SqlDataReader的默认位置在第一条记录前面。因此,必须调用 Read 来开始访问任何数据。如果存在多个行,则为 true;否则为 false。

  5.3 SqlDataReader.HasRows 属性,获取一个值,该值指示SqlDataReader是否包含一行或多行。如果 SqlDataReader包含一行或多行,则为 true;否则为 false。

六、C#操作数据库一般流程

 


七、数据查询流程


八、登陆窗体设计
  打开VS2008,新建项目LoginDemo

  添加一个WINDOWS窗体,名为frm_Login,并拖入如下控件:

九、登陆流程


十、代码编写
  10.1 添加一个数据库操作类,名为BaseOperate
  10.2 getcon方法,返回数据库连接对象

view sourceprint?01 /// <summary> 

02         /// 建立数据库连接 

03         /// </summary> 

04         /// <returns>数据库连接对象</returns> 

05         public SqlConnection getcon() 

06         { 

07             string sqlcon = "packet size=4096;data source=127.0.0.1;persist security info=True;initial catalog=Db_Example;user id=sa"; 

08             SqlConnection myCon = new SqlConnection(sqlcon); 

09             return myCon; 

10         }

  

  10.3 getcom方法,执行执行SQLCOMMAND命令

view sourceprint?01 /// <summary> 

02 /// 执行SQLCOMMAND命令 

03 /// </summary> 

04 /// <param name="str_sql">要执行的SQL语句</param> 

05 public void getcom(string str_sql) 

06 { 

07     SqlConnection sqlcon = this.getcon(); 

08     sqlcon.Open(); 

09     SqlCommand sqlcom = new SqlCommand(str_sql, sqlcon); 

10     sqlcom.ExecuteNonQuery(); 

11     sqlcom.Dispose(); 

12     sqlcon.Close(); 

13   &n

补充:Web开发 , ASP.Net ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,