如何学习ADO.NET

时间:2020-03-05 18:38:12  来源:igfitidea点击:

我需要学习ADO.NET才能基于MS Office构建应用程序。我已经在MSDN Library中阅读了很多有关ADO.NET的信息,但是对我来说一切似乎都有些混乱。

使用ADO.NET时必须弄清楚哪些基本知识?我认为只要几个关键词就足以让我组织学习。

解决方案

回答

有三个关键组件(假设我们使用SQL Server):

  • SQLConnection
  • SqlCommand
  • SqlDataReader

(如果我们使用的是其他内容,请将" Sql"替换为" Something",例如" MySqlConnection"," OracleCommand")

其他一切都建立在此之上。

范例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 = "[email protected]";
  connection.Open();
  command.ExecuteNonQuery();
}

回答

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

这样,我们不必在命令对象上设置Connection属性。