0
當我運行程序.exception通過。即使我使用斷點「必須聲明scalare變量@ password12」
檢查此參數variable.it的價值爲
correct.but我不知道問題出在哪裏?如何處理必須聲明scalare變量例外
code:
public DataSet showoption1(seter set)
{
string sql = "SELECT menue.menuename,roleid, [right].rightname,
role.rolename, employee.employeename, employee.password FROM [right] INNER JOIN
permission ON [right].rightid = permission.rightid INNER JOIN role ON
permission.roleid = role.roleid INNER JOIN emp_men INNER JOIN employee ON
emp_men.employeeid = employee.employeeid ON role.roleid = employee.roleid INNER JOIN
menue ON emp_men.menueid = menue.menueid where [email protected] AND
[email protected] ";
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.AddWithValue("@username",set.Username);
cmd.Parameters.AddWithValue("@pasword12",set.Password);
SqlDataAdapter adptr = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
adptr.Fill(ds);
int id= Convert.ToInt32(ds.Tables[2].Rows[0]["rooleid"]);
st.Username= Convert.ToString(ds.Tables[2].Rows[id]["roolename"]);
adptr.Dispose();
return ds;
}
對不起,Iam不能確定你的觀點,應該更換哪個密碼? – user1405508
@ user1405508如果你的意思是第一位:添加一個「s」,你只是拼錯了。如果你的意思是第二位,那麼:存儲密碼就是*做錯了*。很少有真正的需要存儲實際的密碼。您應該*做的是存儲密碼的醃製密碼散列,並對用戶提供的值執行相同的散列操作。它仍然是一個簡單的平等測試,但它意味着不可能獲得所有密碼的列表。 「醃製」是爲了阻止彩虹表成爲可行的哈希密碼策略。 –