Aqui é onde você está errando:
cmd.ExecuteNonQuery();
Você é executando uma consulta.
Você precisa
ExecuteReader
ou ExecuteScalar
em vez de. ExecuteReader é usado para um conjunto de resultados (várias linhas/colunas), ExecuteScalar quando a consulta retorna um único resultado (ela retorna objeto , então o resultado precisa ser convertido para o tipo correto). var result = (int)cmd.ExecuteScalar();
Os
resultados A variável agora conterá um OledbDataReader
ou um valor com os resultados do SELECT . Você pode iterar sobre os resultados (para um leitor) ou o valor escalar (para um escalar).