gpt4 book ai didi

时间:2019-03-17 标签:c#DBColumnValues

转载 作者:行者123 更新时间:2023-11-30 01:35:31 27 4
gpt4 key购买 nike

     MySqlConnection con = new MySqlConnection("host=db4free.net;user=*;password=*;database=*;");
MySqlCommand xcmd = new MySqlCommand("SELECT x FROM members WHERE id='" + Login.idd + "';");
xcmd.Connection = con;
xint.Connection = con;
DataTable dt = new DataTable();
con.Open();
xcmd.ExecuteNonQuery();
int xx = (int)xcmd.ExecuteScalar();
xcmd.Connection.Close();;
xcmd.Dispose();
x = xx;
con.Close();
if (x == 2)
{
button6.BackgroundImage = Properties.Resources.logo;
}

我希望程序从数据库中读取 X 的值,将其添加到变量中,然后如果它等于 2 则显示 Logo ...

最佳答案

在您的原始代码中,有一些不需要的位;例如,DataTable、xint 命令和 ExecuteNonQuery(例如,用于执行仅从数据库更新/插入/删除的操作,并且不返回结果)

using(MySqlConnection con = new MySqlConnection("host=db4free.net;user=*;password=*;database=*;"))
{
using(MySqlCommand xcmd = new MySqlCommand("SELECT x FROM members WHERE id=@loginid;"))
{
xcmd.connection = con;
xcmd.Parameters.AddWithValue("@loginid", Login.idd);
con.Open();
int x = Convert.ToInt32(xcmd.ExecuteScalar());
//Do something with x
if(x == 2)
{
button6.BackgroundImage = Properties.Resources.logo;
}
}
}

如果您打算进行这种类型的数据访问,我建议 parameterizing您的查询,并使用 ' using '声明。

第一个将有助于防止 SQL 注入(inject)攻击,而第二个将确保当您离开各个 block 的范围时处理非托管资源。

关于时间:2019-03-17 标签:c#DBColumnValues,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16943770/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com