C# SqlDataAdapter.Fill(dt)意外错误
它在C# SqlDataAdapter.Fill(dt)意外错误,c#,sql,database,ado.net,C#,Sql,Database,Ado.net,它在sda处返回意外错误。填充(dt)?在SQL中,您应该使用和而不是&。此外,您还应始终避免使用。因此,您的查询应该是这样的: private void button1_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C: \Users\mohamma ali\Documents\V
sda处返回意外错误。填充(dt)
?在SQL中,您应该使用和
而不是&
。此外,您还应始终避免使用。因此,您的查询应该是这样的:
private void button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C: \Users\mohamma ali\Documents\Visual Studio 2015\Projects\WindowsFormsApplication4\WindowsFormsApplication4\MyLib_DB.mdf ;Integrated Security=True;Connect Timeout=30");
string query = "Select * From User_Registration where UserID = '" + username_textbox.Text.Trim() + "' & Password = '" + password_text.Text.Trim() + "'";
SqlDataAdapter sda = new SqlDataAdapter(query, con);
DataTable dt = new DataTable ();
sda.Fill(dt);
if (dt.Rows.Count == 1)
{
mainmenu main = new mainmenu();
this.Hide();
main.Show();
}
else
{
MessageBox.Show("Please Check usename and password");
}
}
在SQL中,应该使用
和
而不是&
。此外,您还应始终避免使用。因此,您的查询应该是这样的:
private void button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C: \Users\mohamma ali\Documents\Visual Studio 2015\Projects\WindowsFormsApplication4\WindowsFormsApplication4\MyLib_DB.mdf ;Integrated Security=True;Connect Timeout=30");
string query = "Select * From User_Registration where UserID = '" + username_textbox.Text.Trim() + "' & Password = '" + password_text.Text.Trim() + "'";
SqlDataAdapter sda = new SqlDataAdapter(query, con);
DataTable dt = new DataTable ();
sda.Fill(dt);
if (dt.Rows.Count == 1)
{
mainmenu main = new mainmenu();
this.Hide();
main.Show();
}
else
{
MessageBox.Show("Please Check usename and password");
}
}
当您使用integratedsecurity=True时,不要使用AttachDbFilename。SQL Server拥有mdf文件名,不允许访问。请参阅。请提供完整的错误消息和详细信息。您好,我知道您是SO的新手。如果您认为某个答案解决了问题,请单击答案旁边的灰色复选标记,将其标记为“已接受”。查看此链接了解接受答案的工作原理:使用integrated Security=True时不要使用AttachDbFilename。SQL Server拥有mdf文件名,不允许访问。请参阅。请提供完整的错误消息和详细信息。您好,我知道您是SO的新手。如果您认为某个答案解决了问题,请单击答案旁边的灰色复选标记,将其标记为“已接受”。查看此链接了解接受答案的工作原理:
private void button1_Click(object sender, EventArgs e)
{
{
string commandText = "Select * From User_Registration where UserID = @UserID and Password = @Password ";
using (SqlConnection connection = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C: \Users\mohamma ali\Documents\Visual Studio 2015\Projects\WindowsFormsApplication4\WindowsFormsApplication4\MyLib_DB.mdf ;Integrated Security=True;Connect Timeout=30"))
{
SqlDataAdapter sda = new SqlDataAdapter();
SqlCommand command = new SqlCommand(commandText, connection);
command.Parameters.AddWithValue("@UserID", username_textbox.Text.Trim());
command.Parameters.AddWithValue("@Password", password_text.Text.Trim());
try
{
connection.Open();
sda.SelectCommand = command;
DataTable dt = new DataTable();
sda.Fill(dt);
if (dt.Rows.Count == 1)
{
mainmenu main = new mainmenu();
this.Hide();
main.Show();
}
else
{
MessageBox.Show("Please Check usename and password");
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}