create table D_plan
 (
  land_id  int primary key,
  AA_date datetime,
  BB_date datetime,
 );insert into D_plan values(1,'','');select * from D_plan 时出现
1,1900-01-01 00:00:00.000,1900-01-01 00:00:00.000如何让1900-01-01 00:00:00.000,1900-01-01 00:00:00.000不出现;

解决方案 »

  1.   

    datetime 默认值就为这个,LZ可以先定义成字符型,用到时转成DATETIME型
      

  2.   

    取出时强制转换一下就行了
    select land_id,case when AA_date='1900-01-01 00:00:00.000' then '' end AA_date,case when BB_date='1900-01-01 00:00:00.000' then '' end BB_date from D_plan 时
      

  3.   

    insert into D_plan values(1,NULL,NULL);
      

  4.   

    create table D_plan
     (
      land_id  int primary key,
      AA_date datetime,
      BB_date datetime,
     );insert into D_plan values(1,NULL,NULL);select * from D_plan --result
    land_id AA_date                                                BB_date                                                
    ----------- ------------------------------------------------------ ------------------------------------------------------ 
    1           NULL                                                   NULL(1 row(s) affected)
      

  5.   

    select land_id,convert(varchar,AA_date,111) AA_date,convert(varchar,BB_date,111) AA_date from D_plan
      

  6.   

    insert into D_plan values(1,'','')
    ============>insert into D_plan values(1,null,null)
    --------------------
    ''转化成datetime型就变成1900-01-01 00:00:00.000
      

  7.   

    1900-01-01 00:00:00.000这个是SQL默认的就少时间,如果没有指定年份的情况下