数据库表id是主键,自动增长。
insert aa(id) values('')  这个在mysql4是可以执行的,正常。
可是在mysql5中就错误的。
我还是想能让它有效,怎么搞定?

解决方案 »

  1.   

    这是在4.0下导出的结构
    CREATE TABLE `newsletter_blog` (
      `ID` int(11) NOT NULL auto_increment,
      `Headline` varchar(255) default NULL,
      `Grabline` text,
      `Content` text,
      `Publish_Date` datetime default NULL,
      `Of_Section` int(11) default NULL,
      `Sequence` int(11) default NULL,
      `Image` varchar(255) default NULL,
      `Caption` varchar(255) default NULL,
      `Link_Text` varchar(255) default NULL,
      `URL` varchar(255) default NULL,
      `PDF` varchar(255) default NULL,
      `ShowDate` tinyint(4) default NULL,
      `CaptionPDF` varchar(255) default NULL,
      PRIMARY KEY  (`ID`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ;下面这条语句在5.0下也不能执行,因为Publish_Date的值是'--',而在4.0下却可以插入‘0000-00-00 00:00:00'至少没有报错。是不是需要设置哪里??
    INSERT INTO newsletter_blog (Headline, Grabline, Content, Publish_Date, Of_Section, Image, Caption, Link_Text, URL, PDF, ShowDate, CaptionPDF) VALUES ('OUR STAFF', '1', '1
    ', '--', '45', '', '', '', '', '', '', '') 
      

  2.   


    insert aa(id) values(NULL)
      

  3.   

    insert  test(id) values('');
     或者
    insert into test(id) values('');
     或者
    insert into test(id) values(null);都可以.检查你的mysql版本.