同意TheAres(班门斧)的写法。不过,在数据库了那样的样式保存还是date类型啊?

解决方案 »

  1.   

    int year = int.Parse( strYear );
    int month = int.Parse( strMonth );
    int day = int.Parse( strDay );
    int hour = int.Parse( strHour );
    int minute = int.Parse( strMinute );
    int second = 0;DateTime date = new DateTime( year,month,day,hour,minute,second );不需要你把字符串连接起来,构造一个DateTime结构,然后更新此结构到数据库
      

  2.   

    int year = int.Parse( strYear );
    int month = int.Parse( strMonth );
    int day = int.Parse( strDay );
    int hour = int.Parse( strHour );
    int minute = int.Parse( strMinute );
    int second = 0;DateTime date = new DateTime( year,month,day,hour,minute,second );不需要你把字符串连接起来,构造一个DateTime结构,然后更新此结构到数据库
      

  3.   

    同意楼上的做法。通常来说,更新sql数据库一般情况下像TheAres(班门斧)就可以了
      要是oracle的话,给你个通常的例子
      DataTime validFromDate = DataTime.Now();
      TO_DATE("+"'"+validFromDate.ToString("yyyyMMddHHmmss")+"','YYYYMMDDHH24MISS')"
      

  4.   

    同意timmy3310(Tim)的转换方法,虽然保存在数据库里面的不是你所说的“2003年6月28日 0:00“这样的形式,但是可以用下面的代码表现成你所需要的形式
           
            DateTime dt;          //假定你从数据库读出的时间               
            string strDateTime;   //格式化后的时间字符串
            strDateTime = dt.Year.ToString() + "年" +
            dt.Month.ToString() + "月" +
            dt.Day.ToString()+ "日" +
            dt.Hour.ToString() + ":" +
            dt.Minute.ToString();
      

  5.   

    我数据库种的字段类型是DateTime类型,我又想让它是2003年6月28日 0:00这样的格式,怎么写?
      

  6.   

    数据库里只能是'2003-6-8 0:00',数据库内部格式与是按操作系统日期格式储存的,比如Sql server,即使你在企业管理其中直接写入'2003年6月28日 0:00',数据也会变成'2003-6-8 0:00'.
    建议你取出数据时在格式化:
    MessageBox.Show(DateTime.Now.ToString("yyyy年MM月dd日 0:00"));
      

  7.   

    数据库只存DataTime类型,如何显示是UI层的事。不然后续SQL查询会带来不可预知的麻烦