将 sql 语句中的值存储在变量中
store value from sql statement in variable
我的用户使用用户名和密码登录,如果他存在,我会检查数据库。
我想在连接后从连接的用户那里获取 UserID 并将其放入一个变量中,稍后我将能够在我的程序中使用该变量。
我的 table 用户和我的两个函数。我没有添加所有代码,因为我认为没有必要。
+-----------------------------------------+
| User |
+------------+------------+---------------+
| UserID | Username | password |
| 1 | abc | def |
| 2 | ghi | jkl |
+------------+------------+---------------+
public int Login(string Username, string Password)
{
try
{
clsDataSource.mycon = new OleDbConnection(@"Provider=...");
OleDbCommand cmd = new OleDbCommand("Select * from Users where email=@email and pwd=@pwd", clsDataSource.mycon);
cmd.Parameters.AddWithValue("@email",Username);
cmd.Parameters.AddWithValue("@pwd",Password);
clsDataSource.mycon.Open();
dr = cmd.ExecuteReader();
DataTable dt = new DataTable();
dt.Load(dr);
clsDataSource.mycon.Close();
//code to login
return 0;
}
catch (Exception ex)
{
throw ex;
}
}
private void button1_Click(object sender, EventArgs e)
{
//code to check the login
}
检查这个:
var ID = (int)cmd.ExecuteScalar();
这应该有所帮助!
将登录中的return 0
更改为
return dt.Row[0]["ID"];
然后在button1_Click
userId = Login(...)
我的用户使用用户名和密码登录,如果他存在,我会检查数据库。
我想在连接后从连接的用户那里获取 UserID 并将其放入一个变量中,稍后我将能够在我的程序中使用该变量。
我的 table 用户和我的两个函数。我没有添加所有代码,因为我认为没有必要。
+-----------------------------------------+
| User |
+------------+------------+---------------+
| UserID | Username | password |
| 1 | abc | def |
| 2 | ghi | jkl |
+------------+------------+---------------+
public int Login(string Username, string Password)
{
try
{
clsDataSource.mycon = new OleDbConnection(@"Provider=...");
OleDbCommand cmd = new OleDbCommand("Select * from Users where email=@email and pwd=@pwd", clsDataSource.mycon);
cmd.Parameters.AddWithValue("@email",Username);
cmd.Parameters.AddWithValue("@pwd",Password);
clsDataSource.mycon.Open();
dr = cmd.ExecuteReader();
DataTable dt = new DataTable();
dt.Load(dr);
clsDataSource.mycon.Close();
//code to login
return 0;
}
catch (Exception ex)
{
throw ex;
}
}
private void button1_Click(object sender, EventArgs e)
{
//code to check the login
}
检查这个:
var ID = (int)cmd.ExecuteScalar();
这应该有所帮助!
将登录中的return 0
更改为
return dt.Row[0]["ID"];
然后在button1_Click
userId = Login(...)