在哪里使用Execute Scalar,Execute Reader和Data Set?

我知道我可以使用这三个术语从数据库中读取数据,但是任何人都能正确指导我何时使用ExecuteScalarExecuteReaderDataSet

何时使用ExecuteScalar

ExecuteScalar :使用它来执行任何用户定义的函数或存储过程,通常具有标量返回值。 即仅返回一个值。 但是,它也可以与其他查询或存储过程一起使用,但在这种情况下,它返回查询返回的结果集中第一行的第一列。 其他列或行将被忽略。

何时使用ExecuteReader

ExecuteReader :将它用于您对数据库或存储过程提出的常见查询。 CommendText属性决定它是查询还是存储过程名称。 它将CommandText发送到Connection并构建一个返回set的SqlDataReader

数据集与ExecuteReaderExecuteScalar不同,它表示通常来自数据库的数据的内存缓存。