当前位置:编程学习 > C#/ASP.NET >>

俩表间的查询问题求助

在做一个网上征订教材系统,其中有教师和系主任用户。想在系主任登陆时查询教师们登记的教材时,只能查询到本系的教师登记的教材。其中有两张表,gerenxinxi表包含了所有用户的信息。其中有username和suozaixeyuan两列,jiaocaizhengding表中有shoukejiaoshi列。也就是说教师名和系主任名都显示在username列中了,教师名还显示在shoukejiaoshi列中。
现在做到了系主任进去后能查到所有教师的教材,但是我只想查本系的教师的教材,那个button事件就是说我按三个条件查询的,但是也是查出的所有符合的,我只想查本系符合的,求指点如何改啊
 protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {

            string sql;
            sql = "select * from jiaocaizhengding order by id desc";
            getdata(sql);
        }
    }

    private void getdata(string sql)
    {
        DataSet result = new DataSet();
        result = new Class1().hsggetdata(sql);
        if (result != null)
        {

            if (result.Tables[0].Rows.Count > 0)
            {
                DataGrid1.DataSource = result.Tables[0];
                DataGrid1.DataBind();
                int i = 0;
                int k = 0;
                for (i = 0; i < result.Tables[0].Rows.Count; i++)
                {
                    k = k + int.Parse(result.Tables[0].Rows[i]["zhengdingshuliang"].ToString().Trim());
                }
                Label1.Text = "以上数据中共" + result.Tables[0].Rows.Count + "条,共计数量" + k.ToString().Trim() + "本";
            }
            else
            {
                DataGrid1.DataSource = null;
                DataGrid1.DataBind();
                Label1.Text = "暂无任何数据";
            }
        }
    }
protected void Button1_Click(object sender, EventArgs e)
    {
        string sql;
        sql = "select * from jiaocaizhengding where 1=1";
        if (bh.Text.ToString().Trim() != "")
        {
            sql = sql + " and jiaocaimingcheng like '%" + bh.Text.ToString().Trim() + "%'";
        }
        if (mc.Text.ToString().Trim() != "")
        {
            sql = sql + " and kechengming like '%" + mc.Text.ToString().Trim() + "%'";
        }
        if (shoukejiaoshi.Text.ToString().Trim() != "")
        {
            sql = sql + " and shoukejiaoshi like '%" + shoukejiaoshi.Text.ToString().Trim() + "%'";
        }
        sql = sql + " order by id desc";

        getdata(sql);
    } --------------------编程问答-------------------- 改变查询条件 --------------------编程问答-------------------- 增加一个表示本息的条件 --------------------编程问答-------------------- 现在做到了系主任进去后能查到所有教师的教材,但是我只想查本系的教师的教材,那个button事件就是说我按三个条件查询的,但是也是查出的所有符合的,我只想查本系符合的,求指点如何改啊

gerenxinxi表中 加属于系部字段

主任登录后 先找所在系 

通过系部ID 查找出 所在系的所有教师

在跟你的jiaocaizhengding表连接

select * from gerenxinxi a inner join jiaocaizhengding b on a.教师Name=b.教师name

但是最好用ID 来做列 不要用名字判断 因为名字有可能重复。


--------------------编程问答--------------------
引用 1 楼 xuexiaodong2009 的回复:
改变查询条件

gerenxinxi表中 加属于系部字段

~+++1
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,