日期:2014-05-18  浏览次数:20749 次

求教Access缺省日期与DataGridView绑定的问题
我在Access里有一日期列设为Date()缺省值,绑定在DataGridViewTextBoxColumn类型的列上,打算在表格上的日期列自动显示当前日期省去用户输入的麻烦,但为何绑定后在表格上没有显示?更新数据库后,反而在Access里日期列为空而不是应该有的当天日期

------解决方案--------------------
你要是执行构造的 SQL 就要进行转换,比如 string sql = "insert into Temp(UpdTime) values(convert(datetime, ' "+System.DateTime.Now.ToString( "yyyy-MM-dd hh:mm:ss ")+ " ',120) "


如果是执行存储过程,就要把参数的类型设成 System.Data.SqlDbType.DateTime 才可以
------解决方案--------------------
我中文太差劲了........自卑一会儿,,,,,,,,,,,,,,,


//...自动显示当前日期省去用户输入的麻烦...但为何绑定后在表格上没有显示?
贴代码片断看一下


//更新数据库后,反而在Access里日期列为空而不是应该有的当天日期
//我在Access里有一日期列设为Date()缺省值

默认值试试设为 Now() 呢?我不确定是不是这儿的问题,,,,,


------解决方案--------------------
飘过~~关注一下~~
------解决方案--------------------
在dataGridView控件的DefaultValuesNeeded事件处理默认值
private void dataGridView1_DefaultValuesNeeded(object sender,
System.Windows.Forms.DataGridViewRowEventArgs e)
{
e.Row.Cells[ "Date "].Value = DateTime.Now;//设置新增行的默认值

------解决方案--------------------
在程序中判断,如果时间的输入框为空(用户未输入),就插入System.DateTime.Now,用户输入了就插入用户输入的值