我需要学习 ADO.NET 来构建基于 MS Office 的应用程序。我在 MSDN 库中阅读了大量有关 ADO.NET 的内容,但对我来说,一切都显得相当混乱。

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

有帮助吗?

解决方案

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

  • 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();
}

其他提示

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

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top