c# executenonquery和executeScalar區(qū)別

c#
小樊
113
2024-07-18 04:20:45

在C#中,ExecuteNonQuery和ExecuteScalar都是用于執(zhí)行 SQL 命令的方法,但它們之間有一些關(guān)鍵區(qū)別。

  1. ExecuteNonQuery方法用于執(zhí)行INSERT、UPDATE、DELETE等對(duì)數(shù)據(jù)庫(kù)進(jìn)行修改的SQL語(yǔ)句,它返回一個(gè)表示受影響行數(shù)的整數(shù)。例如:
SqlCommand cmd = new SqlCommand("DELETE FROM Table1 WHERE ID = 1", conn);
int rowsAffected = cmd.ExecuteNonQuery();
  1. ExecuteScalar方法用于執(zhí)行返回單個(gè)值的SQL查詢,例如COUNT、MAX、MIN等聚合函數(shù),或者查詢單個(gè)行的某個(gè)字段的值。它返回一個(gè)表示查詢結(jié)果的對(duì)象。例如:
SqlCommand cmd = new SqlCommand("SELECT COUNT(*) FROM Table1", conn);
int count = (int)cmd.ExecuteScalar();

因此,ExecuteNonQuery用于執(zhí)行修改數(shù)據(jù)庫(kù)的SQL語(yǔ)句并返回受影響行數(shù),而ExecuteScalar用于執(zhí)行返回單個(gè)值的SQL查詢。

0