BugFoundDate是时间类型的 access数据库里是这样显示的 2010-01-14dtp1和dtp2是DateTimePicker控件我的数据库语句是这样写的
string sql = "select * from BugInfo where BugFoundDate between #" + DateTime.Parse(dtp1.Value.ToLongDateString()) + "# and #" + DateTime.Parse(dtp2.Value.ToLongDateString())+ "#";大家给看看哪不对 教教我怎么写 折腾了一下午了还有一个问题
我的窗体1里有个DataGridView显示数据表里的所有字段
添加是在窗体2中作的
怎么才能当我在窗体2里添加字段后 在窗体1的DataGridView自动显示出来麻烦大家了 俺刚学 最好能说的详细点

解决方案 »

  1.   


    string sql = "select * from BugInfo where BugFoundDate between #" + string.Format("{0:yyyy-MM-dd",dtp1.Value) + "# and #" + dtp2.Value.ToString("yyyy-MM-dd")+ "#";dtp2.Value.ToString("yyyy-MM-dd")
    Datetime的tostring貌似有这样的重载,如果没有你就使用第一种
    格式化成年月日的格式比较好
    不知道行不行,从代码上看没发现什么问题
      

  2.   

    第二个问题
    Form1里这么写:
    Form2 f=new Form(datagridview);
    f.Show();Form2里这么写:
    privite DataGridView dg;
    public Form2(DataGridView dgv)
    {
         dg=dgv;
    }
    然后就可以在Form2里对dg进行操作了
      

  3.   

    这个应该是       datetimer控件 值 转换为字符的函数不对, 手边没有.net, 你网上查一下,或者可以参考下类似内容http://www.job108.com/App/show_article.aspx?m=0027FEA7A0000CF2Dhttp://www.zzchn.com/edu/20080218/78228.shtml
      

  4.   

    第一个问题:
    string sql = "select * from BugInfo where BugFoundDate between #" + dtp1.Value.ToString("yyyy-MM-dd") + "# and #" + DateTime.Parse(dtp2.Value.ToString("yyyy-MM-dd")+ "#"第二个问题:
    在Form2中定义一个委托及事件,在添加完成后触发:如:
    public delegate void AddItemHandle();
    public event AddItemHandle OnAddTheItem;
    void addBtn_Click(object sender, EventArgs e)
    {
    //先保存数据
    if (OnAddTheItem != null)
        OnAddTheItem();
    }在Form1中定义一个方法,用于重新绑定数据:
    private void BindDataGridView()
    {
    //重新绑定数据
    }
    在初始化Form2时要将Form1的事件注册到当前的BindDataGridView
    Form2 fm2 = new Form2();
    fm2.OnAddTheItem += new Form2.AddItemHandle(BindDataGridView);
      

  5.   

    注意,上面的第一个问题写错了,应该是这样:
    string sql = "select * from BugInfo where BugFoundDate between #" + dtp1.Value.ToString("yyyy-MM-dd") + "# and #" + dtp2.Value.ToString("yyyy-MM-dd")+ "#"