我有一张table
`CREATE TABLE IF NOT EXISTS `PROGETTO`.`ALBERGO` (
`ID` INT(11) NOT NULL COMMENT 'identificativo dell\' albergo' ,
`nome` VARCHAR(45) NULL COMMENT 'Il nome dell\'albergo' ,
`viale` VARCHAR(45) NULL COMMENT 'Il viale in cui si trova ' ,
`num_civico` VARCHAR(5) NULL COMMENT 'Il numero civico che gli appartiene' ,
`data_apertura` DATE NULL COMMENT 'Data di inizio apertura (inizio stagione)' ,
`data_chiusura` DATE NULL COMMENT 'Data di chiusura (fine stagione)' ,
`orario_apertura` TIME NULL COMMENT 'Orario di apertura' ,
`orario_chiusura` TIME NULL COMMENT 'Orario di chiusura' ,
`posti_liberi` INT(11) NULL COMMENT 'Disponiblità posti liberi ' ,
`costo_intero` FLOAT NULL COMMENT 'Costo del prezzo intero' ,
`costo_ridotto` FLOAT NULL COMMENT 'Costo del prezzo ridotto' ,
`stelle` INT(11) NULL COMMENT 'Classificazione in base al criterio delle stelle' ,
`telefono` VARCHAR(15) NULL COMMENT 'Recapito telefonico' ,
`mail` VARCHAR(100) NULL COMMENT 'Recapito e-mail' ,
`web` VARCHAR(100) NULL COMMENT 'Sito Web relativo all\'ente' ,
'Nome-paese` VARCHAR(45) NOT NULL COMMENT 'Identificativo del paese in cui si trova l\'albergo' ,
`Comune` CHAR(2) NOT NULL COMMENT 'Identificativo del comune in cui si trova l\'albergo' ,
PRIMARY KEY (`ID`) ,
INDEX `Nome-paese` (`Nome-paese` ASC) ,
INDEX `Comune` (`Comune` ASC) ,
CONSTRAINT `Nome-paese`
FOREIGN KEY (`Nome-paese` )
REFERENCES `PROGETTO`.`PAESE` (`Nome-paese` )
ON DELETE NO ACTION
ON UPDATE CASCADE,
CONSTRAINT `Comune`
FOREIGN KEY (`Comune` )
REFERENCES `PROGETTO`.`PAESE` (`Comune` )
ON DELETE NO ACTION
ON UPDATE CASCADE)
ENGINE = InnoDB
当我尝试运行此查询时:
INSERT INTO `PROGETTO`.`ALBERGO`(`ID`, `nome`, `viale`, `num_civico`, `data_apertura`, `data_chiusura`, `orario_apertura`, `orario_chiusura`, `posti_liberi`, `costo_intero`, `costo_ridotto`, `stelle`, `telefono`, `mail`, `web`, `Nome-paese`, `Comune`)
VALUES(0, 'Hotel Centrale', 'Via Passo Rolle', '74', '01-05-2012', '31-09-2012', '06:30', '24:00', 80, 50, 25, 3, '43968083', 'info@hcentrale.it', 'http://www.hcentrale.it/', 'Trento', 'TN')
错误代码:1292。第1行“data_apertura”列的日期值“01-05-2012”不正确
我有什么要改变的?(我试图将格式的日期从gg/mm/yyyy更改为gg-mm-yyy,但没有更改)
6条答案
按热度按时间e5nszbig1#
对于mysql5.7,不允许使用0000-00-00:00:00这样的日期值。
如果你想允许,你必须更新你的my。cnf如:
发现
添加到:
重新启动mysql服务:
完成!
5us2dqdw2#
以以下格式
yyyy-MM-dd
示例插入日期:,ffscu2ro3#
我在C#应用程序的Workbench plus插入查询中遇到了同样的问题。在我的案例中,使用ISO格式可以解决问题
aiazj4mn4#
我碰巧在windows10的localhost中工作,使用WAMP,事实证明,Wamp有一个真正可访问的配置接口来更改MySQL配置。您只需要转到Wamp面板,然后转到MySQL,然后转到设置并将模式更改为sql模式:无。(基本上禁用严格模式)下图说明了这一点。
小时
uoifb46i5#
更新。表格“2019-08-00”的日期将触发相同的错误。添加线条:
到
mysql.cnf
也修复了这个问题。插入格式错误的日期现在会为超出范围的值生成警告,但会插入数据。jmo0nnb36#
只需更新@Sinan Eldem的回答:
由于MySQL 8.0,sql_mode=“NO_AUTO_CREATE_USER”是不推荐使用的(源代码),应该从该行中删除,否则将导致读取sql_mode时出错并启动mysqld失败。
如果使用MySQL 8.0+,请改为添加以下行: