c# - SQL execute scalar returning NULL -


queryshelf = "select * shelftable shelfid= @shelfid";  //create mysql command mysqlcommand cmd = new mysqlcommand(queryshelf, connection);  cmd.parameters.add(new mysqlparameter("@shelfid", mysqldbtype.varchar)).value = mainwindow.shelfids[i];  //executescalar return 1 value int count = int.parse(cmd.executescalar() + ""); 

executescalar used return single value, selecting complete records. use executereader , use read records.

but can use executescalar select *. happens first column of first row in result set returned, or null reference if result set empty.

since null seems filter doesn't return record.

since want count change query to:

queryshelf = "select count(*) shelftable shelfid= @shelfid"; // ... int count = (int) cmd.executescalar(); 

now never null count of records, 0 if no record exists shelfid.


Comments

Popular posts from this blog

javascript - Google App Script ContentService downloadAsFile not working -

javascript - Function overwritting -

php - Find a regex to take part of Email -