gpt4 book ai didi

MYSQL 不接受空格

转载 作者:行者123 更新时间:2023-11-29 01:56:00 25 4
gpt4 key购买 nike

我在 mysql 中创建了一个表:

CREATE TABLE `test1` (
`age` int(12) NOT NULL DEFAULT '0',
`name` varchar(20) NOT NULL DEFAULT '',
`gender` varchar(10) DEFAULT NULL,
PRIMARY KEY (`age`,`name`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

我要在此表中插入 2 行:

insert into test1 values(1,'user1','m');
insert into test1 values(1,'user1 ','m');

在第二行插入中,我希望我的“姓名”字段有空格。但是当我运行第二个查询时,它给出了违反主键的错误。

有没有一种方法可以在具有主键的表中插入空格?

最佳答案

VARCHAR 列中的值是可变长度的字符串。你可以申报VARCHAR 列是 1 到 255 之间的任意长度,就像 CHAR列。但是,与 CHAR 不同,VARCHAR 值是使用只需要多少个字符,再加上一个字节来记录长度。值未填充;相反,尾随空格被删除存储值时。 (此空格删除不同于 SQL-99规范。)

您可能需要 lpad、rpad 或 space

如果你正在为 html 开发你可以用不同的字符替换空白,一旦你查询你用空白替换字符,你甚至可以使用 " " 这将在您的 html 浏览器中插入一个空白区域

关于MYSQL 不接受空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29230311/

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