我需要使用包含400万行的表来填充下拉菜单。
如果不在select语句上超时,我怎么能这样做?
是否需要SQL注入。 ?或其他什么?
现在我尝试只获得前100行。但是我的项目在数据库中有很多用户和很多细节。所以我需要在下拉列表中显示所有值,我当前的代码在这里:
protected void SearchButton_Click(object sender, EventArgs e)
{
var search = YourSeachTextBox.Text.Trim();
if(!String.IsNullOrEmpty(search) && search.Length > 3)
{
using(SqlConnection sqlConnection = new SqlConnection("Your Connection String"))
{
var query = "SELECT TOP 100 * FROM [YourTable] WHERE UserName LIKE @Search";
SqlCommand sqlCommand = new SqlCommand(query,sqlConnection);
sqlCommand.Parameters.AddWithValue("@Search", search + "%");
}
}
}
答案 0 :(得分:0)
我假设您打算使用400万行的部分填充下拉列表? 然后你必须在那些有助于分离它们的列上创建索引!
如果您真的打算一次性填充大部分内容,那么事情将不得不超时,因为您的客户浏览器无法处理此问题!