数据库列名无效问题
我在VS.net中建有一登录页面,验证教师登录,要求输入帐户tno和密码tpas,分别由两个textbox控件tno,tpas负责录入.页面用到数据库class中tea表,tea表结构为:tno char(8),tname char(8),tdept char(20),tpost char(6),tpas char(20).
页面中验证代码如下:
private void Button1_Click(object sender, System.EventArgs e)
{
if (tno.Text==""||tpas.Text=="")
{
msg.Text="请输入完整资料!";
return;
}
SqlConnection Con = new SqlConnection("Data Source=localhost;Initial Catalog=class;User ID=sa;Pwd=;");
string sel="select * from tea where tno=" + tno.Text ;
SqlCommand addCommand =new SqlCommand(sel,Con);
addCommand.Connection.Open();
SqlDataReader selreader ;
selreader=addCommand.ExecuteReader();
if (selreader.Read() == false)
{
msg.Text="该教师不存在!";
return;
}
else
{
getpas=selreader.GetString(4);
addCommand.Connection.Close();
if (getpas.CompareTo(tpas.Text.PadRight(20))==0)
{
Session["tea"]="hasin";
msg.Text="登录成功!";
seec.Visible=true;
addc.Visible=true;
Button1.Visible=false; seec.NavigateUrl="seec.aspx?tno="+tno.Text ;
addc.NavigateUrl="addc.aspx?tno="+tno.Text;
binddata();
}
else
msg.Text="密码错误。";
}
}
表tea中有若干条记录,其中两条记录为:
3 zhang 3 副教授 3
TC104 马志军 110102 副教授 1234
输入帐户/密码:3,3,登录成功
输入帐户/密码:TC104,1234,运行出错
错误信息如下:“/class”应用程序中的服务器错误。
-----------------------------------------------------------------------
列名 'TC104' 无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 列名 'TC104' 无效。
源错误:
行 104: addCommand.Connection.Open();
行 105: SqlDataReader selreader ;
行 106: selreader=addCommand.ExecuteReader();
行 107: if (selreader.Read() == false)
行 108: {
源文件: G:\ASP.NET\BOOK\class\teacher.aspx.cs 行: 106
堆栈跟踪:
[SqlException: 列名 'TC104' 无效。]
System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream)
System.Data.SqlClient.SqlCommand.ExecuteReader()
class_selcet.teacher.Button1_Click(Object sender, EventArgs e) in G:\ASP.NET\BOOK\class\teacher.aspx.cs:106
System.Web.UI.WebControls.Button.OnClick(EventArgs e)
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
System.Web.UI.Page.ProcessRequestMain()
请教各位兄弟,帮助我解决以下该问题。