如何学习ADO.NET

时间:2008-08-07 00:25:03

标签: ado.net

我需要学习ADO.NET来构建基于MS Office的应用程序。我在MSDN Library中已经阅读了很多关于ADO.NET的内容,但是对我来说一切看起来都很混乱。

使用ADO.NET时必须弄清楚的基础知识是什么?我想一些关键词就足以让我组织学习。

2 个答案:

答案 0 :(得分:6)

有三个关键组件(假设你使用的是SQL服务器):

  • SQLConnection
  • SqlCommand
  • SqlDataReader

(如果您使用其他内容,请将Sql替换为“Something”,例如MySqlConnectionOracleCommand

其他所有东西都是建立在其上的。

示例1:

using (SqlConnection connection = new SqlConnection("CONNECTION STRING"))
using (SqlCommand command = new SqlCommand())
{
  command.commandText = "SELECT Name FROM Users WHERE Status = @OnlineStatus";
  command.Connection = connection;
  command.Parameters.Add("@OnlineStatus", SqlDbType.Int).Value = 1; //replace with enum
  connection.Open();

  using (SqlDataReader dr = command.ExecuteReader))
  {
      List<string> onlineUsers = new List<string>();

      while (dr.Read())
      {
         onlineUsers.Add(dr.GetString(0));
      }
  }
}

示例2:

using (SqlConnection connection = new SqlConnection("CONNECTION STRING"))
using (SqlCommand command = new SqlCommand())
{
  command.commandText = "DELETE FROM Users where Email = @Email";
  command.Connection = connection;
  command.Parameters.Add("@Email", SqlDbType.VarChar, 100).Value = "user@host.com";
  connection.Open();
  command.ExecuteNonQuery();
}

答案 1 :(得分:0)

获取命令对象的另一种方法是调用connection.CreateCommand()

这样您就不必在命令对象上设置Connection属性。