怎么判断ACCESS中是否有记录 我想做一个登录,想验证一下ACCESS中是否有这个用户和密码。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select count(*) from account where username = 用户名如果返回值大于0,用户就存在, "select count(*) from 表 where username = 用户名 and password = 密码" SqlConnection conn = new SqlConnection(Application["connect"].ToString ()); //Dim cmd As New SqlCommand("select userpassword, gsmc, emp_name, qx, ssgs, ht_zxdw.mll from yonghu, ht_zxdw where yonghu.ssgs = ht_zxdw.id and username = '" + TextBox1.Text + "'", conn) SqlCommand cmd = new SqlCommand("SELECT YONGHU.USERPASSWORD,mc FROM YONGHU" , conn); SqlDataReader dr ; conn.Open(); dr = cmd.ExecuteReader(); if (!(dr.HasRows)) { return; } dr.Read(); if( this.Login1 .Password == dr.GetValue(0).ToString ()) { Response.Redirect("login.aspx"); } dr.Close(); cmd.Dispose(); conn.Close(); conn.Dispose(); SqlConnection con;//这个对象是连接数据库的SqlCommand cmd=new SqlCommand("select count(*) from 表 where username = 用户名 and password = 密码",con);int count=int.Parse(cmd.ExecuteScalar());if(count>0){ //说明存在此用户} //////////////////////////////////////////////////////////////////////// //名称 : bool CheckUser (string username,string userpassword, string tablename)//功能 : 检查用户//传入类型: string//传入参数: username = 用户名 ; // userpassword = 密码 ; // tablename = 用户密码所在的表名;//返回类型; bool//返回值 : true(通过) or false(拒绝) 用户权限通过////////////////////////////////////////////////////////////////////////public bool CheckUser (string username,string userpassword, string tablename){ //防止用户使用sql经典漏洞( ' or ''=' )入侵系统 //首先检查字符串里是否包含 ' 如果有,直接返回false username=username.Replace("'",""); userpassword=userpassword.Replace("'",""); //以下是执行sql语句检查用户 OleDbConnection MyConnection = null; OleDbDataAdapter MyDataAdapter= null; DataSet MyDataset=null; string sqlstring; sqlstring="select * from " + tablename + " where username='" + username + "'" + "and password='" + userpassword + "'"; try { MyConnection = new OleDbConnection(GetConnectionString()); MyDataAdapter= new OleDbDataAdapter (sqlstring,MyConnection); MyDataset=new DataSet(); MyDataset.Clear(); MyConnection.Open(); MyDataAdapter.Fill(MyDataset,"login"); if (MyDataset.Tables[0].Rows.Count > 0 ) { return true; } else { return false; } }//endtry catch(Exception ex) { return false; }//endcatch finally { if(MyDataset !=null) { MyDataset.Dispose(); } if(MyDataAdapter != null) { MyDataAdapter.Dispose(); } if(MyConnection != null) { MyConnection.Close(); MyConnection.Dispose(); } }//endfinally}//end CheckUser SqlConnection con;//这个对象是连接数据库的SqlCommand cmd=new SqlCommand("select count(*) from 表 where username = 用户名 and password = 密码",con);int count=int.Parse(cmd.ExecuteScalar());if(count>0){ //说明存在此用户}int count=int.Parse(cmd.ExecuteScalar()); 这句话不对过不去。 有一些看不懂哟,可不可以注释一下啊,junzhang4008(不会飞的猪),可以把try里面的函数注释一下吗?MyDataAdapter.Fill(MyDataset,"login"); //login ? if (MyDataset.Tables[0].Rows.Count > 0 ) //? { return true; } else { return false; } }//endtry catch(Exception ex) { return false; }//endcatch finally { if(MyDataset !=null) //这个是判断? { MyDataset.Dispose(); } if(MyDataAdapter != null) { MyDataAdapter.Dispose(); } if(MyConnection != null) //这个是判断? { MyConnection.Close(); MyConnection.Dispose(); } }//endfinally}//end CheckUser有一点看不懂,请知道的帮忙解释一下,谢谢了 //////////////////////////////////////////////////////////////////////// //名称 : bool CheckUser (string username,string userpassword, string tablename)//功能 : 检查用户//传入类型: string//传入参数: username = 用户名 ; // userpassword = 密码 ; // tablename = 用户密码所在的表名;//返回类型; bool//返回值 : true(通过) or false(拒绝) 用户权限通过////////////////////////////////////////////////////////////////////////public bool CheckUser (string username,string userpassword, string tablename){ //防止用户使用sql经典漏洞( ' or ''=' )入侵系统 //首先检查字符串里是否包含 ' 如果有,直接替换掉 ' 符号就可以了 username=username.Replace("'",""); userpassword=userpassword.Replace("'",""); //以下是执行sql语句检查用户 OleDbConnection MyConnection = null; OleDbDataAdapter MyDataAdapter= null; DataSet MyDataset=null; string sqlstring; sqlstring="select * from " + tablename + " where username='" + username + "'" + "and password='" + userpassword + "'"; //tablename,username,password 是调用 //的时候传递进来的。直接当作sql语句 //参数的一部分 try { MyConnection = new OleDbConnection(GetConnectionString()); MyDataAdapter= new OleDbDataAdapter (sqlstring,MyConnection); MyDataset=new DataSet(); MyDataset.Clear(); MyConnection.Open(); //以上打开了数据库并查询出结果 //以下把结果填充到dataset里 主要用dataset的Rows.Count的功能 MyDataAdapter.Fill(MyDataset,"login"); //把结果填充到MyDataset中 //填充的表名是login //(什么名无所谓) if (MyDataset.Tables[0].Rows.Count > 0 ) //上面这句是 如果查询后符合条件 的结果集里 有记录(就是记录数>0) //则说明有这个用户,(通过验证) { return true; } else { return false; } }//endtry catch(Exception ex) { return false; }//endcatch finally //以下是释放资源 { if(MyDataset !=null) //为了高效执行,所以加的这个判断 //不加也可以,不过Dispose操作时间 //比起 if 的判断来说,是慢多了。 //一旦try里面执行错误。比如MyConnection //出现错误,则下面的DataAdapter...都没有被实 //例化则 if判断,没有实例化的没必要dispose了 //可以加快执行速度 { MyDataset.Dispose(); } if(MyDataAdapter != null) { MyDataAdapter.Dispose(); } if(MyConnection != null) { MyConnection.Close(); MyConnection.Dispose(); } }//endfinally}//end CheckUser //////////////////////////////////////////////////////////////////////// //名称 : string GetConnectionString ()//功能 : 得到连接字符串,如果更改位置的话,直接修改这个方法的返回值//传入类型: 空//传入参数: 空//返回类型; string//返回值 : 连接字符串 ////////////////////////////////////////////////////////////////////////public string GetConnectionString () //得到连接字符串,如果更改位置的话,直接修改这个方法的返回值{ return "provider=microsoft.jet.oledb.4.0;data source =F:"+"\\"+"asp.net学生信息管理系统cSharp"+"\\"+"database"+"\\"+"sysdb.mdb";}忘了给你个这个了。这是偶弄的一个毕业设计。嘿嘿 只想检查是否有这个用户和密码那就using(OleDbConnection conn = new OleDbConnection("你的连接字符串")){ OleDbCommand cmd = new OldDbCommand("select count(*) from TABLE where UserName='" + username + "' and PASSWORD='" + password + "'", conn); if(int.Parse(cmd.ExecuteScarlar().ToString()) > 0) { MessageBox.Show("有这户"); } else { MessageBox.Show("没这户"); }} //会自动调用conn.Dispose(), conn.Dispose()会调用conn.Close(); 只想检查是否有这个用户和密码那就using(OleDbConnection conn = new OleDbConnection("你的连接字符串")){ OleDbCommand cmd = new OldDbCommand("select count(*) from TABLE where UserName='" + username + "' and PASSWORD='" + password + "'", conn); conn.Open(); // 忘了打开数据库了. if(int.Parse(cmd.ExecuteScarlar().ToString()) > 0) { MessageBox.Show("有这户"); } else { MessageBox.Show("没这户"); }} //会自动调用conn.Dispose(), conn.Dispose()会调用conn.Close(); C#入门经典第四版 图像处理的高斯低通滤波问题 马上要用C#做个关于铁路运营的项目,不知道要收集哪方面的材料,还请大家赐教 DataGridView 编辑列的问题(我的可用分只剩下这么多了) 请问软件在进程中的唯一标识是什么呢? 大家给看一下,这段关于添加数据到数据库的代码 救急!! 请问各位大虾,c#中如何获得文件路径 C#调用VC++编写的DLL,出现Access Violations问题 visual studio安装问题 读取XML配置文件的问题 还是ISO文件的生成问题并问一下是不是所用UP给分的帖子都给扣信誉分
//Dim cmd As New SqlCommand("select userpassword, gsmc, emp_name, qx, ssgs, ht_zxdw.mll from yonghu, ht_zxdw where yonghu.ssgs = ht_zxdw.id and username = '" + TextBox1.Text + "'", conn)
SqlCommand cmd = new SqlCommand("SELECT YONGHU.USERPASSWORD,mc FROM YONGHU" , conn);
SqlDataReader dr ;
conn.Open();
dr = cmd.ExecuteReader();
if (!(dr.HasRows))
{
return;
}
dr.Read();
if( this.Login1 .Password == dr.GetValue(0).ToString ())
{
Response.Redirect("login.aspx");
}
dr.Close();
cmd.Dispose();
conn.Close();
conn.Dispose();
SqlCommand cmd=new SqlCommand("select count(*) from 表 where username = 用户名 and password = 密码",con);
int count=int.Parse(cmd.ExecuteScalar());
if(count>0)
{
//说明存在此用户
}
//名称 : bool CheckUser (string username,string userpassword, string tablename)
//功能 : 检查用户
//传入类型: string
//传入参数: username = 用户名 ;
// userpassword = 密码 ;
// tablename = 用户密码所在的表名;//返回类型; bool
//返回值 : true(通过) or false(拒绝) 用户权限通过
////////////////////////////////////////////////////////////////////////
public bool CheckUser (string username,string userpassword, string tablename)
{
//防止用户使用sql经典漏洞( ' or ''=' )入侵系统
//首先检查字符串里是否包含 ' 如果有,直接返回false
username=username.Replace("'",""); userpassword=userpassword.Replace("'",""); //以下是执行sql语句检查用户 OleDbConnection MyConnection = null;
OleDbDataAdapter MyDataAdapter= null;
DataSet MyDataset=null; string sqlstring;
sqlstring="select * from " + tablename + " where username='" + username + "'" + "and password='" + userpassword + "'";
try
{
MyConnection = new OleDbConnection(GetConnectionString()); MyDataAdapter= new OleDbDataAdapter (sqlstring,MyConnection);
MyDataset=new DataSet();
MyDataset.Clear();
MyConnection.Open();
MyDataAdapter.Fill(MyDataset,"login");
if (MyDataset.Tables[0].Rows.Count > 0 )
{
return true;
}
else
{
return false;
}
}//endtry
catch(Exception ex)
{
return false;
}//endcatch
finally
{
if(MyDataset !=null)
{
MyDataset.Dispose();
}
if(MyDataAdapter != null)
{
MyDataAdapter.Dispose();
}
if(MyConnection != null)
{
MyConnection.Close();
MyConnection.Dispose();
}
}//endfinally}//end CheckUser
SqlCommand cmd=new SqlCommand("select count(*) from 表 where username = 用户名 and password = 密码",con);
int count=int.Parse(cmd.ExecuteScalar());
if(count>0)
{
//说明存在此用户
}int count=int.Parse(cmd.ExecuteScalar()); 这句话不对过不去。
MyDataAdapter.Fill(MyDataset,"login"); //login ?
if (MyDataset.Tables[0].Rows.Count > 0 ) //?
{
return true;
}
else
{
return false;
}
}//endtry
catch(Exception ex)
{
return false;
}//endcatch
finally
{
if(MyDataset !=null) //这个是判断?
{
MyDataset.Dispose();
}
if(MyDataAdapter != null)
{
MyDataAdapter.Dispose();
}
if(MyConnection != null) //这个是判断?
{
MyConnection.Close();
MyConnection.Dispose();
}
}//endfinally}//end CheckUser有一点看不懂,请知道的帮忙解释一下,谢谢了
//名称 : bool CheckUser (string username,string userpassword, string tablename)
//功能 : 检查用户
//传入类型: string
//传入参数: username = 用户名 ;
// userpassword = 密码 ;
// tablename = 用户密码所在的表名;//返回类型; bool
//返回值 : true(通过) or false(拒绝) 用户权限通过
////////////////////////////////////////////////////////////////////////
public bool CheckUser (string username,string userpassword, string tablename)
{
//防止用户使用sql经典漏洞( ' or ''=' )入侵系统
//首先检查字符串里是否包含 ' 如果有,直接替换掉 ' 符号就可以了
username=username.Replace("'",""); userpassword=userpassword.Replace("'",""); //以下是执行sql语句检查用户 OleDbConnection MyConnection = null;
OleDbDataAdapter MyDataAdapter= null;
DataSet MyDataset=null; string sqlstring;
sqlstring="select * from " + tablename + " where username='" + username + "'" + "and password='" + userpassword + "'"; //tablename,username,password 是调用
//的时候传递进来的。直接当作sql语句
//参数的一部分
try
{
MyConnection = new OleDbConnection(GetConnectionString()); MyDataAdapter= new OleDbDataAdapter (sqlstring,MyConnection);
MyDataset=new DataSet();
MyDataset.Clear();
MyConnection.Open();
//以上打开了数据库并查询出结果
//以下把结果填充到dataset里 主要用dataset的Rows.Count的功能
MyDataAdapter.Fill(MyDataset,"login"); //把结果填充到MyDataset中
//填充的表名是login
//(什么名无所谓)
if (MyDataset.Tables[0].Rows.Count > 0 )
//上面这句是 如果查询后符合条件 的结果集里 有记录(就是记录数>0)
//则说明有这个用户,(通过验证)
{
return true;
}
else
{
return false;
}
}//endtry
catch(Exception ex)
{
return false;
}//endcatch
finally //以下是释放资源
{
if(MyDataset !=null) //为了高效执行,所以加的这个判断
//不加也可以,不过Dispose操作时间
//比起 if 的判断来说,是慢多了。
//一旦try里面执行错误。比如MyConnection
//出现错误,则下面的DataAdapter...都没有被实
//例化则 if判断,没有实例化的没必要dispose了
//可以加快执行速度
{
MyDataset.Dispose();
}
if(MyDataAdapter != null)
{
MyDataAdapter.Dispose();
}
if(MyConnection != null)
{
MyConnection.Close();
MyConnection.Dispose();
}
}//endfinally}//end CheckUser
//名称 : string GetConnectionString ()
//功能 : 得到连接字符串,如果更改位置的话,直接修改这个方法的返回值//传入类型: 空
//传入参数: 空//返回类型; string
//返回值 : 连接字符串
////////////////////////////////////////////////////////////////////////
public string GetConnectionString () //得到连接字符串,如果更改位置的话,直接修改这个方法的返回值
{
return "provider=microsoft.jet.oledb.4.0;data source =F:"+"\\"+"asp.net学生信息管理系统cSharp"+"\\"+"database"+"\\"+"sysdb.mdb";
}忘了给你个这个了。
这是偶弄的一个毕业设计。嘿嘿
using(OleDbConnection conn = new OleDbConnection("你的连接字符串"))
{
OleDbCommand cmd = new OldDbCommand("select count(*) from TABLE where UserName='" + username + "' and PASSWORD='" + password + "'", conn);
if(int.Parse(cmd.ExecuteScarlar().ToString()) > 0)
{
MessageBox.Show("有这户");
}
else
{
MessageBox.Show("没这户");
}
} //会自动调用conn.Dispose(), conn.Dispose()会调用conn.Close();
using(OleDbConnection conn = new OleDbConnection("你的连接字符串"))
{
OleDbCommand cmd = new OldDbCommand("select count(*) from TABLE where UserName='" + username + "' and PASSWORD='" + password + "'", conn);
conn.Open(); // 忘了打开数据库了.
if(int.Parse(cmd.ExecuteScarlar().ToString()) > 0)
{
MessageBox.Show("有这户");
}
else
{
MessageBox.Show("没这户");
}
} //会自动调用conn.Dispose(), conn.Dispose()会调用conn.Close();