现在正在做一个项目,需要用到存储过程利用SQL SERVER 2005创建的一个存储过程如下CREATE PROCEDURE [dbo].[up_day_HourPm10Data]
@ldBeginTime datetime,
@ldEndTime datetime
AS
BEGIN
SELECT ld_recv_date, ld_PM10 from dbo.T_Mid_HourPm10Data where ld_recv_date between @ldBeginTime and @ldEndTime
END上述存储过程 要表达的意思是:从表 dbo.T_Mid_HourPm10Data 中根据起止时间查询出符合条件的记录(接收时间ld_recv_time,监测值ld_PM10)在SQL查询分析器中执行该存储过程时:给输入参数赋初值
@ldBeginTime datetime = '2010-3-31 14:00:00',
@ldEndTime datetime = '2010-3-31 17:00:00'输出结果为:ld_recv_date                 ld_PM102010-3-31 14:00:00             10
2010-3-31 15:00:00             20
2010-3-31 16:00:00             15
2010-3-31 17:00:00             30--------------------------------------------------------------C# WinForm应用程序的窗体上添加两个 datetimepicker 一个listview 一个查询按钮,选择好相应的起止时间后,点击查询按钮即可调用上述存储过程,将查询出来的结果填到listviewer中由于第一次使用存储过程,不知道如何在C# WinForm应用程序中调用存储过程恳请大家帮忙,最好能发一个demo源码, 我邮箱 [email protected]谢谢帮忙!

解决方案 »

  1.   

    自己建立一个.cs文件,专门写连接函数,如下:
    程序要调用函数user_login,
                  WebApplication1.cs.user userlogin = new WebApplication1.cs.user();
                SqlDataReader recu = userlogin.user_login(username.Text.Trim(),                WebApplication1.cs.user.Encrypt(pwd.Text.Trim()));
                ///判断用户是否合法
                if (recu.Read())
                {
                    UserName = recu["UserName"].ToString();
                    User_Priviledge = recu["UserPrivilege"].ToString();
                    RealName = recu["RealName"].ToString();
                    UserId = recu["ID"].ToString();            }
                recu.Close();
    需要在user.cs中写这个函数:
     public SqlDataReader user_login(string sUserName, string sPassword)
        {
            ///定义类SQLHelper
            SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper();        ///定义保存从数据库获取的结果的DataReader
            SqlDataReader dr = null;        ///创建访问数据库的参数
            SqlParameter[] paramList = {
       sqlHelper.CreateInParam("@username",SqlDbType.VarChar,200,sUserName),
       sqlHelper.CreateInParam("@pwd",SqlDbType.VarChar,255,sPassword)
       };        try
            {
                ///执行存储过程
                sqlHelper.RunProc("user_login", paramList, out dr);
            }
            catch (Exception ex)
            {
                ///抛出执行数据库异常
                SystemError.SystemLog(ex.Message);
                throw new Exception(ex.Message, ex);
            }        ///返回从数据库获取的结果
            return (dr);
        }
    它就是去调用存储过程的:
    CREATE PROCEDURE [dbo].[user_login]
    @username varchar(200),
    @pwd varchar(255)
     ASselect *
    from UserInfo
    where  UserName=@username and PassWord=@pwd
    GO
      

  2.   

    这种是基础啊,你用SQLCommand或adapter就可以了。 
      

  3.   

    显示-服务器浏览?-链接你的DB,找到具体的proc,设置断点