我从数据库查询两个字段,比如“用户名”、“密码”,用datareader读取,我该怎么分别引用这两个字段??
在线等!

解决方案 »

  1.   

    dr["用户名"]
    dr["密码"]
      

  2.   

    con = New SqlConnection("server=(local);database=asset;user id=sa")
    sqlstr = "select 用户名,口令 from [s_user] where 用户名='{0}' and 口令='{1}'"
    sqlstr = String.Format(sqlstr, txtname.Text, txtpwd1.Text)  
    cmd = New SqlCommand(sqlstr, con)
    con.Open()                
    username = CType(cmd.ExecuteScalar(), String)  username得到"用户名“,但口令该如何得到??
      

  3.   

    dim dr as datareader=cmd.executeReader()
    Dim uname=dr("用户名")
    Dim uPwd=dr("口令")
      

  4.   

    con = New SqlConnection("server=(local);database=asset;user id=sa")
    sqlstr = "select 用户名,口令 from [s_user] where 用户名='{0}' and 口令='{1}'"
    sqlstr = String.Format(sqlstr, txtname.Text, txtpwd1.Text)  
    cmd = New SqlCommand(sqlstr, con)
    con.Open()                
    username = CType(cmd.ExecuteScalar(), String) 
    ----------
    向楼主这样的写法我不知道有什么意义?
      

  5.   

    Sub Login(sender as Object, e as EventArgs)
          '1. 创建连接
          Const strConnString as String 
          strConnString= "Data Source=.;Initial Catalog=test;User Id=sa;Password=;"
          Dim objConn as New SqlConnection(strConnString)
          
          '2. 创建Command对象
          Dim strSQL as String = "SELECT COUNT(*) FROM UserAccount " & _
                            "WHERE Username=@Username AND Password=@Password"
          Dim objCmd as New SqlCommand(strSQL, objConn)
          
          '3. 创建参数
          Dim paramUsername as SqlParameter
          paramUsername = New SqlParameter("@Username", SqlDbType.VarChar, 25)
          paramUsername.Value = txtUsername.Text
          objCmd.Parameters.Add(paramUsername)
             Dim paramPwd as SqlParameter
          paramPwd = New SqlParameter("@Password", SqlDbType.VarChar, 25)
          paramPwd.Value = txtUserPwd.Text
          objCmd.Parameters.Add(paramPwd)
          
          
          '执行查询
          objConn.Open()
          Dim iResults as Integer = objCmd.ExecuteScalar()
          objConn.Close()
          
          If iResults = 1 then
            '合法
          Else
            '不合法
          End If
        End Sub这样不是更好?
      

  6.   

    我是从一本ASP.net 入门级的书上借鉴的 ,看了 renyu732(Good Good Study,Day Day Up.) 的代码,简直是大开眼界,令我冒色度开,叹为观止!!!
    万分感谢!!
      

  7.   

    看不懂楼主的意思,既然用户名已经从textbox中得到,怎么还要从表中select?
    username直接等于txtname.Text不就好了?呵呵,给段代码,参考一下;
    con = New SqlConnection("server=(local);database=asset;user id=sa")
    string sql="select 用户名,口令 from [s_user]";
    con.open();
    SqlCommand cmd=new SqlCommand(sql,con);
    SqlDataReader dr=cm.ExcuteRead();
    username=dr["用户名"].Tostring();
    con.close();
      

  8.   

    zengxitb(璇儿:为了老公学.NET!) :
    我要验证从txtname.text中得到的用户名和口令是否已经注册
    当然要从数据库取值来比较啊
      

  9.   

    renyu732(Good Good Study,Day Day Up.) :
    dim dr as datareader=cmd.executeReader()
    Dim uname=dr("用户名")
    Dim uPwd=dr("口令")如果数据库中不存在这样的("用户名")和("口令"),那么dr =cmd.executeReader() 将返回什么值呢?
      

  10.   

    dim dr as datareader=cmd.executeReader()
    Dim uname=dr("用户名")
    Dim uPwd=dr("口令")如果数据库中不存在这样的("用户名")和("口令"),那么dr =cmd.executeReader() 将返回什么值呢?
    ----------
    你可以判断的啊。
    给你个例子,如果有看不懂的地方,在交流。
    http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpref/html/frlrfsystemdataodbcodbccommandclassexecutereadertopic.asp
      

  11.   

    那就用if(dr.Read())来判断是否表里有该用户名和密码啊
      

  12.   

    谢谢 renyu732(Good Good Study,Day Day Up.) 、 zengxitb(璇儿:为了老公学.NET!) 了!