【问题标题】:MySQL REPLACE doesn't works how expectedMySQL REPLACE 无法按预期工作
【发布时间】:2016-02-18 02:54:21
【问题描述】:

我的表(name是主键,id是唯一键):

||   name   || id ||    col_1    ||
===================================
||  test1   ||1234||   test999   ||

查询:

REPLACE INTO `table` (`name`, `col_1`) VALUES ('NOTTEST1', 'test999').

在这种情况下,它不能替换行,但确实可以。我做错了什么?

【问题讨论】:

标签: mysql


【解决方案1】:

效果很好!

您能否检查表结构是否设置正确。这是我所做的:

表:

CREATE TABLE `test` (
  `name` varchar(25) NOT NULL,
  `id` int(11) DEFAULT NULL,
  `col_1` varchar(25) DEFAULT NULL,
  PRIMARY KEY (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

insert  into `test`(`name`,`id`,`col_1`) values ('test1',1234,'test999');

当我尝试这个时:

REPLACE INTO test (`name`,`col_1`) VALUES('test11','admin');

它创造了一个新记录。

【讨论】:

    猜你喜欢
    • 2016-11-28
    • 1970-01-01
    • 1970-01-01
    • 2013-12-23
    • 2014-12-09
    • 2016-01-13
    • 2020-09-21
    • 2011-08-17
    • 2012-04-29
    相关资源
    最近更新 更多