| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 792 人关注过本帖, 1 人收藏
标题:编写搜索按钮的问题
只看楼主 加入收藏
荨夕泪
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2011-12-17
结帖率:100%
收藏(1)
已结贴  问题点数:15 回复次数:4 
编写搜索按钮的问题
     各位高手,能不能帮我给忙,帮我看看这段代码有没有问题。
     如果我是想要编一个员工窗体的搜索按钮,(根据员工编号和员工姓名来搜索)并把搜索结果显示在相应的控件里面,或者在DataGridView里面只显示所搜索的那一行,要怎么编呢?下面的代码还要怎么改???

      private void btnSearch_Click(object sender, EventArgs e)
        {
            SqlExcuClass objSqlExcuClass=new SqlExcuClass ();
            string Sql;
            Sql = "select StoreKeepersID AS 库管员编号,StoreKeepersName AS 姓名,Sex AS 性别,IdentityID AS 身份证号,Birthday AS 出生日期,EnterLibraryDate AS 入馆日期,Phone AS 电话,Address AS 地址 from StoreKeepersInfo";
            switch (cobSearchTerms.SelectedIndex)
            {
                case 1:
                    Sql += "where StoreKeepersID='" + txtSearchTerms.Text.Trim() + "'";
                    break ;
                case 2:
                    Sql += "where StoreKeepersName='" + txtSearchTerms.Text.Trim() + "'";
                    break;
            }
            DataSet sqldataset = objSqlExcuClass.getds(Sql, "StoreKeepersInfo");
            dataGridView1.DataSource =
            
        }
    }
 
  

下面是SqlExcuClass类里的内容
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace LibraryManagementSystem
{
    class SqlExcuClass
    {
        //建立数据库连接
        public SqlConnection getsqlconn()
        {
            string connstring = "SERVER=(local)\\SQLEXPRESS;Database=LibraryManagementSystem;Integrated Security=SSPI";
            SqlConnection sqlconn = new SqlConnection(connstring);
            return sqlconn;
        }

        //执行插入、删除、修改等无返回值的语句:使用Sqlcommand的ExecuteNonQuery()方法;
        public void getnonqerycom(string sql)
        {
            SqlConnection sqlconn = this.getsqlconn();
            sqlconn.Open();
            SqlCommand sqlcom = new SqlCommand(sql, sqlconn);
            sqlcom.ExecuteNonQuery();
            sqlcom.Dispose();
            sqlconn.Close();
        }

       //执行查询语句,且需一个一个返回值:使用Sqlcommand的ExecuteReader()方法,赋值给SqlDataReader对象;
        public SqlDataReader getread(string sql)
        {
            SqlConnection sqlconn = this.getsqlconn();
            sqlconn.Open();
            SqlCommand sqlcom = new SqlCommand(sql, sqlconn);
            SqlDataReader sqldr = sqlcom.ExecuteReader(CommandBehavior.CloseConnection);
            return sqldr;
        }

        //执行查询语句,一下子接受所有信息:使用DataSet对象
        public DataSet getds(string sql, string seach_table)
        {
            SqlConnection sqlconn = this.getsqlconn(); //Fill会自动打开连接,并处理后自动关闭自身打开的连接,若连接已经打开,Fill处理后,连接仍是打开的。
            SqlDataAdapter sqlda = new SqlDataAdapter(sql, sqlconn);
            DataSet sqlds = new DataSet();
            sqlda.Fill(sqlds, seach_table);
            return sqlds;
        }
    }
}

[ 本帖最后由 荨夕泪 于 2012-1-3 14:39 编辑 ]
搜索更多相关主题的帖子: 库管员 private 如果我是 姓名 搜索结果 
2012-01-03 14:35
winners
Rank: 6Rank: 6
来 自:济南
等 级:侠之大者
威 望:1
帖 子:105
专家分:416
注 册:2009-3-20
收藏
得分:8 
单击按钮中组合sql的时候,where前应有空格,那个swich没必要吧
2012-01-03 18:17
荨夕泪
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2011-12-17
收藏
得分:0 
回复 2楼 winners
   应为我是要根据员工编号或姓名来搜索出表里面相对于的行啊,如果没有Switch语句不就是查出整个表的内容了吗?
2012-01-03 22:26
wypdragon
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:29
专家分:110
注 册:2011-11-19
收藏
得分:8 
2楼的意思可能是说用if就可以了,不用switch
2012-01-04 08:06
荨夕泪
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2011-12-17
收藏
得分:0 
回复 4楼 wypdragon
哦哦···谢谢啦···
2012-01-04 16:04
快速回复:编写搜索按钮的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028681 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved