17

我需要学习 ADO.NET 来构建基于 MS Office 的应用程序。我在 MSDN Library 中阅读了很多关于 ADO.NET 的文章,但对我来说,一切似乎都很混乱。

使用 ADO.NET 时必须了解哪些基础知识?我想几个关键词就足以让我组织我的学习。

4

2 回答 2

6

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

  • SQLConnection
  • SqlCommand
  • SqlDataReader

(如果您使用其他东西,请替换Sql为“某物”,例如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 = "user@host.com";
  connection.Open();
  command.ExecuteNonQuery();
}
于 2008-08-07T00:37:04.727 回答
0

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

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

于 2008-08-18T05:35:21.227 回答