Rückgabewert von OleDbCommand

sqlQuery = "SELECT [ID] from [users] WHERE CallerName=@CallerName";

OleDbConnection conn = new OleDbConnection(connectionString);
conn.Open();
cmd = new OleDbCommand(sqlQuery, conn);
cmd.CommandText = sqlQuery;
cmd.Parameters.Add("@CallerName", OleDbType.VarChar).Value = labelProblemDate.Text.Trim();
cmd.Parameters["@CallerName"].Value = name;
cmd.ExecuteNonQuery();          
conn.Close();

Mir wurde gesagt, dass dies ist, wie das Lesen von Daten aus einer SELECT-Abfrage mit Parameter, aber es funktioniert nicht. Ich glaube, ich habe etwas falsch gemacht.

Ich bin mit WinForms und Microsoft Access 2007

  • Welche Fehlermeldungen erhalten Sie? Auch, Sie scheinen zu verwechseln mit Ihrer @CallerName parameter. Was ist die variable "name" und auch ExecuteNonQuery nicht durchführen a wählen Sie.
  • Willst du alle ID ' s mit diesem Namen, oder nur eine? Wenn letzteres, wäre es besser zu SELECT TOP 1 ID FROM [users] WHERE CallerName=@CallerName. Dann verwenden Sie ExecuteScalar(link inside), um nur die ausgewählte ID (falls vorhanden).
InformationsquelleAutor Cocoa Dev | 2012-04-27
Schreibe einen Kommentar