c# 读取access错误

来源:百度知道 编辑:UC知道 时间:2024/06/15 14:01:37
protected void Button1_Click(object sender, EventArgs e)
{
string tb = txtUsername.Text;
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;" + "Data Source=" + Server.MapPath("App_Data/bzh.mdb");
string strSQL = "select pasword from login where username= "+tb ;
OleDbCommand com = new OleDbCommand(strSQL, conn);
oledbdataReader dr=com.ExecuteReader();

while (dr.Read())
{
if (txtPassword.Text == dtr["pasword"].ToString() )
{
Label1.Text = "ok";
}
else
{
Label1.Text = "no";
}
}

输入数据库内没有的 username 如12312 则显示OLeDbDa

string strSQL = "select pasword from login where username= "+tb ;
改成
string strSQL = "select pasword from login where username= '"+tb+"'" ;

你单引号忘了加了.

貌似你数据库的链接没打开,添加一个 conn.open();
用完后记得conn.close();
连接串有问题没?在左面新建一个udl文件测试连接串 。
再看sql语句有问题没,拿到SQL上去执行下,看哪里出错了,貌似是楼上的说的问题,没加单引号。