用C#编写asp网站的一个小问题
现在做一个登录窗口.
登录按钮代码如下:
using System.Data.SqlClient;//载入数据库
string id;
id = Label1.Text;
SqlConnection cnn = new SqlConnection();
cnn.ConnectionString = "Data Source= .;Initial Catalog = data; uid = sa; pwd = "; //连接数据库
cnn.Open(); //打开数据库
string sql = "select password from zlogin where sno = 参数"; //SQL语句
SqlCommand cmd = new SqlCommand(sql, cnn);
SqlDataReader dr = cmd.ExecuteReader();
我想把sql语句中的参数,换成上面定义的 id ,请问应该怎么写,请写出一条完整的SQL语句
另外 dr.read() 这函数,如果没有特别说明,是不是只读第一条?
请帮我完成后面几句代码,使得可以实现"登录功能".
(根据用户名,查找数据库中的密码,如果输入的密码与数据库中的密码一致辞,则可登录)
并将密码显示于 label3 控件上
追问:我是做asp网页的,好像没有 messagebox类哦...
答案:using System.Data.SqlClient;//载入数据库
//在表示层时,调用方法时
string id = this.text1.Text;
string pw=this.text2.Text;
UserDal userDal=new UserDal(); //数据库访问类的实例对象
User user=userDal.getUserByIDandPw(id,pw);
if(user!=null)
{
MessageBox.show("登录成功!");
}
else
{
MessageBox.show("登录失败!!");
}
/*
*数据库访问层
*/
//在这里我把这个类的名字定义为UserDal
publcic User getUserByIDandPw(string loginId,string loginPw){
User user=null; //封装的实体对象,就是用户表对应的实体的引用名
string connString="Data Source= .;Initial Catalog = data; uid = sa; pwd = "; //连接数据库
SqlConnection conn= new SqlConnection(connString);
conn.Open(); //打开数据库
string sql = "select password from zlogin where id= loginId and pw=loginPw"; //SQL语句(id和pw分别为 数据库中用户表字段)
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader dr = cmd.ExecuteReader();
if(dr.read()) //必须保证数据库中用户id为自动增长列,或主键
{
user=new User();
user.属性=dr["数据库字段"].toString(); //dr["数据库字段"].为Object类型,所以要转换
return User; //实体类对象
}
我晕哦~不就是简单做一个登陆嘛。。。。。建议你还是先吧那些基础的东西弄清楚吧~这样对你以后的编程有帮助的~你都没弄明白就开始~肯定又问题啦~
郁闷 id怎么可能等于label1.text,你窗体上lable1.txt的值就是(用户:)啊,id应该是等于用户名对应的那个TEXT控件的值吧。。。你这问题就是C#中简单的操作数据库啊,你把问题说清楚点,我来回答
有messagebox类的 只是在System.window.form里面 你要用就必须添加引用
string sql = "select password from zlogin where sno ="+id;
label3.Text=pwd;
while(dr.read())
{
dr[0]//第一条
}
上一个:通常asp iis与什么数据库搭配比较好
下一个:求讲解ASP。NET代码