为什么 MySQL 返回 # MySQL 返回一个空结果集(即零行)。
和 3 行受影响。
?我的SQL语句有什么问题吗?
CREATE TABLE IF NOT EXISTS `test` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`order` mediumint(8) NOT NULL,
`url` varchar(70) COLLATE utf8_unicode_ci NOT NULL,
`title` varchar(70) COLLATE utf8_unicode_ci NOT NULL,
`content` text COLLATE utf8_unicode_ci,
PRIMARY KEY (`id`),
UNIQUE KEY `url` (`url`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
# MySQL returned an empty result set (i.e. zero rows).
INSERT INTO `test` (`id`, `order`, `url`, `title`, `content`) VALUES
(52338, 1, '', 'Home', 'content'),
(70104, 2, 'about', 'About', 'content'),
(27034, 3, 'portfolio', 'Portfolio', 'content');
# 3 row(s) affected.
最佳答案
受影响的行数和结果集的长度是两个不同的东西。
通常,INSERT、UPDATE 和 DELETE 语句会影响行,而 SELECT 返回一个结果集,如果根据条件没有匹配到的行,则该结果集可能为空。
关于sql - 为什么 MySQL 会返回类似 'returned an empty result set' 或 'n row(s) affected' 的消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5009662/