C# 我的MySql“SELECT”命令有问题
我想从表中获取第一个id,并将其写入label16.text,以便为我的程序创建一个页面。为什么下面的代码返回system.threading.tasks.Unwromise'1[system.object]C# 我的MySql“SELECT”命令有问题,c#,winforms,datatables,mdf,C#,Winforms,Datatables,Mdf,我想从表中获取第一个id,并将其写入label16.text,以便为我的程序创建一个页面。为什么下面的代码返回system.threading.tasks.Unwromise'1[system.object] await sqlConnection.OpenAsync(); SqlCommand command = new SqlCommand("SELECT Id from Recipes order by id asc limit 1", sqlConnecti
await sqlConnection.OpenAsync();
SqlCommand command = new SqlCommand("SELECT Id from Recipes order by id asc limit 1", sqlConnection);
label16.Text = command.ExecuteScalarAsync().Result.ToString();
你应该改变
label16.Text=command.ExecuteScalarAsync.Result.ToString;
到
var t=await command.ExecuteScalarAsync;
label16.Text=t.Unwrap.ToString;
为了填写完整的答案,我也会从评论中粘贴这个
您必须做的另一件事是修复SQL查询,它应该是
按Id asc从配方订单中选择TOP1 Id
第三项质询
我会这样做的
尝试
{
var id=int.Parselabel16.Text;
sqlDataAdapter=newSqlDataAdapter$SELECT*FROM Recipes,其中Id={Id},sqlConnection;
}捕获{//错误处理}
有必要打开包装吗?原因:System.Data.SqlClient.SqlException:靠近“limit”的语法不正确。因此,如果我得到的是MSSQL,您应该按照Id ascwait从Recipes order中选择TOP1 Id,如果您仍然在这里,如何获取label.text的值并使Id成为该值?我试过了,效果不错,但我需要把8改成label16.text。sqlDataAdapter=new sqlDataAdapter从配方中选择*,其中Id=8,sqlConnection;我已经编辑了答案,所以这里也有答案