
System.Data.OleDb.OleDbException: 标准表达式中数据类型不匹配。 20
我是在做一个小项目吖。然后用Access数据库连接的。classDataAccess{privatestringstrDSN;OleDbConnectionoledbCo...
我是在做一个小项目吖。然后用Access数据库连接的。
class DataAccess
{
private string strDSN;
OleDbConnection oledbCon;
public void dataCon()
{
strDSN = "Provider = Microsoft.Jet.OLEDB.4.0;DATA Source = " + Application.StartupPath.ToString() + "\\student.mdb";
oledbCon = new OleDbConnection(strDSN );
}
public DataSet getDataset(string sql)
{
DataSet ds = new DataSet();
oledbCon.Open();
try
{
OleDbCommand oledbCom = new OleDbCommand(sql, oledbCon);
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCom);
oledbDa.Fill(ds);
return ds;
}
catch (Exception ex)
{
throw new Exception(ex.ToString()); (在这里出现System.Data.OleDb.OleDbException标准表达式中数据类型不匹配)
}
finally
{
oledbCon.Close();
}
}
具体代码是:
private void btnLogin_Click(object sender,EventArgs e)
{
string username,password;
string strSql = "";
DataSet ds;
if (radiobtnStu.Checked)
{
if (txtName.Text.Trim() != "" && txtPassword.Text.Trim() != "")
{
username = txtName.Text.Trim();
password = txtPassword.Text.Trim();
strSql = "select * from 学生基本信息表 where SId = ' " + username + " 'and SPassword=' " + password + " ' ";
DataAccess data = new DataAccess();
data.dataCon();
ds = data.getDataset(strSql);
if (ds.Tables[0].Rows.Count == 1)
{
frmStu_Main fMain = new frmStu_Main();
fMain.Show();
this.Hide();
}
else
{
MessageBox.Show("用户名或密码错误!", "登录失败!");
}
}
else
{
MessageBox.Show("用户名或密码为空,请输入信息!", "提示!");
}
}
哪位高人帮忙看看是哪里错误怎么改。急求急求。非常感谢~~ 展开
class DataAccess
{
private string strDSN;
OleDbConnection oledbCon;
public void dataCon()
{
strDSN = "Provider = Microsoft.Jet.OLEDB.4.0;DATA Source = " + Application.StartupPath.ToString() + "\\student.mdb";
oledbCon = new OleDbConnection(strDSN );
}
public DataSet getDataset(string sql)
{
DataSet ds = new DataSet();
oledbCon.Open();
try
{
OleDbCommand oledbCom = new OleDbCommand(sql, oledbCon);
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCom);
oledbDa.Fill(ds);
return ds;
}
catch (Exception ex)
{
throw new Exception(ex.ToString()); (在这里出现System.Data.OleDb.OleDbException标准表达式中数据类型不匹配)
}
finally
{
oledbCon.Close();
}
}
具体代码是:
private void btnLogin_Click(object sender,EventArgs e)
{
string username,password;
string strSql = "";
DataSet ds;
if (radiobtnStu.Checked)
{
if (txtName.Text.Trim() != "" && txtPassword.Text.Trim() != "")
{
username = txtName.Text.Trim();
password = txtPassword.Text.Trim();
strSql = "select * from 学生基本信息表 where SId = ' " + username + " 'and SPassword=' " + password + " ' ";
DataAccess data = new DataAccess();
data.dataCon();
ds = data.getDataset(strSql);
if (ds.Tables[0].Rows.Count == 1)
{
frmStu_Main fMain = new frmStu_Main();
fMain.Show();
this.Hide();
}
else
{
MessageBox.Show("用户名或密码错误!", "登录失败!");
}
}
else
{
MessageBox.Show("用户名或密码为空,请输入信息!", "提示!");
}
}
哪位高人帮忙看看是哪里错误怎么改。急求急求。非常感谢~~ 展开
1个回答
展开全部
可能是你的username或者SPassword中有特殊字符导致的吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?

2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询