这段查询代码是哪有问题,怎么一个参数能查出结果,两个参数就查不出。各层代码都列出,急用,谢谢
UI层:
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e) //两参按钮
{
string username = TextBox1.Text.Trim();
string userpwd = TextBox2.Text.Trim();
DataTable dt = new P_AdminManager().SelectAdmin(username, userpwd);
int i = dt.Rows.Count;
if (i > 0)
{
TextBox1.Text = Convert.ToString(i);
TextBox2.Text = "登录成功";
}
else
{
TextBox1.Text = Convert.ToString(i);
TextBox2.Text = "登录失败";
}
protected void Button2_Click(object sender, EventArgs e) //一参按钮
{
string username = TextBox1.Text.Trim();
string userpwd = TextBox2.Text.Trim();
DataTable dt = new P_AdminManager().SelectByUser(username);//
int i = dt.Rows.Count;
if (i > 0)
{
TextBox1.Text = Convert.ToString(i);
TextBox2.Text = "登录成功";
}
else
{
TextBox1.Text = Convert.ToString(i);
TextBox2.Text = "登录失败";
}
}
}
BLL层:
public class P_AdminManager
{
private P_AdminDAO P_dao = null;
public P_AdminManager()
{
P_dao = new P_AdminDAO();
}
public DataTable SelectByUser(string un) //单参
{
return P_dao.SelectByUser(un);
}
public DataTable SelectAdmin(string username, string userpwd)//双参
{
return P_dao.SelectAdmin(username,userpwd);
}
}
DLL层:
public class P_AdminDAO
{
private SQLHelper sqlhelper;
public P_AdminDAO()
{
sqlhelper = new SQLHelper();
}
//单参――――――――――――――――――――――――
public DataTable SelectByUser(string un)
{
DataTable dt = new DataTable();
string cmdText = "select * from P_Admin where P_adminame=@P_adminame";
SqlParameter[] para = new SqlParameter[] {
new SqlParameter("@P_adminame", un) };
dt = sqlhelper.ExecuteQuery(cmdText, para, CommandType.Text);
return dt;
}
//双参―――――――――――――――――――――――――――
public DataTable SelectAdmin(string username, string userpwd)
{
DataTable dt = new DataTable();
string cmdText = "select * from P_Admin where P_adminame=@P_adminame and P_adminpwd=@P_adminpwd";//
SqlParameter[] paras = new SqlParameter[]{
new SqlParameter("@P_adminame",username),
new SqlParameter("@P_adminpwd",userpwd)};//
dt = sqlhelper.ExecuteQuery(cmdText, paras, CommandType.Text);
return dt;
}
}
Sqlhelper类:
public class SQLHelper
{
private SqlConnection conn = null;
private SqlCommand cmd = null;
private SqlDataReader sdr = null;
public SQLHelper()
{
string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
conn = new SqlConnection(connStr);
}
public SqlConnection GetConn()
{
if (conn.State == ConnectionState.Closed)
{ conn.Open(); }
return conn;
}
//带参查询
public DataTable ExecuteQuery(string cmdText, SqlParameter[] paras, CommandType ct)
{
DataTable dt = new DataTable();
cmd = new SqlCommand(cmdText, GetConn());
cmd.CommandType = ct;
cmd.Parameters.AddRange(paras);
using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(sdr);
}
return dt;
}
}
我不知道怎么回事,传一个参数可以登录成功,两个参数就不行。是不是我的查询语句有问题,还是我用的代码有问题。
传一个参的结果是:i=1 登录成功;
传两个参的结果是:i=0 登录失败;
这里的代码基本完整,求大侠帮帮看看,急用,谢谢!!!
...全文
相关推荐
mybatis interceptor 处理查询参数及查询结果的实例代码
主要介绍了mybatis interceptor 处理查询参数及查询结果,非常不错,具有参考借鉴价值,需要的朋友可以参考下
python 代码主要实现了从多个数据库表中查询数据、对查询结果进行多轮合并、基于特定规则进行数据聚合以及最终将结果保存为CSV文件的功能
这段代码主要实现了从多个数据库表中查询数据、对查询结果进行多轮合并、基于特定规则进行数据聚合以及最终将结果保存为CSV文件的功能。整体流程围绕对与图书相关的不同层级索引、文件以及分析数据的整合与分析展开,旨在统计不同图书及其层级结构下的各类资源访问和下载相关指标情况。
mybatis中查询结果为空时不同返回类型对应返回值问题
主要介绍了mybatis中查询结果为空时不同返回类型对应返回值问题,本文分几种方法给大家介绍的非常详细,需要的朋友可以参考下
mybatis查询结果返回至实体类的示例代码
主要介绍了mybatis查询结果返回至实体类的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
两个表中查询出不同的数据
NULL 博文链接:https://nicegege.iteye.com/blog/1604109


