Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 类似SQL表的数据集查询_Sql Server_Dataset_Password Checker - Fatal编程技术网

Sql server 类似SQL表的数据集查询

Sql server 类似SQL表的数据集查询,sql-server,dataset,password-checker,Sql Server,Dataset,Password Checker,有没有办法像查询SQL表一样查询数据集?如果用户名和密码匹配,我想签入数据集。我可以这样使用代码: foreach (DataRow row in dataset.Tables[0].Rows) { MessageBox.Show(row.ItemArray[1].ToString()); } 但我只希望它选择给定用户名的行,而不是迭代整个表 谢谢。您可以使用 dataset.Tables[0].Select(....) 但你不应该。在几乎所有情况下,SQL server都会更快地

有没有办法像查询SQL表一样查询
数据集
?如果用户名和密码匹配,我想签入数据集。我可以这样使用代码:

foreach (DataRow row in dataset.Tables[0].Rows)
{
   MessageBox.Show(row.ItemArray[1].ToString());
}
但我只希望它选择给定用户名的行,而不是迭代整个表

谢谢。

您可以使用

 dataset.Tables[0].Select(....)

但你不应该。在几乎所有情况下,SQL server都会更快地找到匹配项


此外,您应该散列您的密码

您可以使用行筛选器

dataset.Tables[0].DefaultView.RowFilter = "UserName='MyUserName' 
And Password='0x0000000000000000'"

if(dataset.Tables[0].DefaultView.Count > 0){
//User Found
}else{
//User Not Found
}
更多信息见下文

也就是说,理想情况下,这种过滤是在SQL中完成的,而不是在.NET代码中完成的