gpt4 book ai didi

mysql无法插入未签名主键为零的记录

转载 作者:IT老高 更新时间:2023-10-29 00:04:52 25 4
gpt4 key购买 nike

我正在尝试将一条记录插入到 dim_channel 表中,主键为零(无符号整数)。

Mysql 命令:

INSERT INTO dim_channel 
set channel_id=0,name='Other',parent_channel_id=0,parent_channel_name='Other';

结果:

select * from dim_channel;
+------------+-------+-------------------+---------------------+
| channel_id | name | parent_channel_id | parent_channel_name |
+------------+-------+-------------------+---------------------+
| 1 | Other | 0 | Other |
+------------+-------+-------------------+---------------------+

请注意,channel_id 的值为 1,而不是我预期的 0。

任何人都知道为什么会这样。

顺便说一句,我可以将记录更新为:update dim_channel set channel_id=0 where channel_id=1;

只想知道为什么我一开始就不能插入channel_id=0的记录。

非常感谢。

====== MySQL 命令供你测试====

-- 创建表

CREATE TABLE `dim_channel` (
`channel_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` char(80) DEFAULT NULL,
`parent_channel_id` int(10) unsigned NOT NULL DEFAULT '0',
`parent_channel_name` varchar(80) DEFAULT NULL,
PRIMARY KEY (`channel_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1

--插入记录

INSERT INTO dim_channel set channel_id=0,name='Other',parent_channel_id=0,parent_channel_name='Other';

--查看结果

select * from dim_channel;

最佳答案

我知道这是一篇旧帖子,但无论如何:

用途:

SET sql_mode='NO_AUTO_VALUE_ON_ZERO';

在您的维度中插入 0 值之前。

关于mysql无法插入未签名主键为零的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16549566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com