SQL INSERT INTO varchar

问题描述 投票:0回答:1

我一直试图在我的varchar列K_Name中插入3个值,但当我试图用INSERT INTO命令插入它们时,它给我以下错误。error

mysql sql
1个回答
1
投票

如果你已经有一个主键列,并且只需要一个自动增量,你可以试试

ALTER TABLE tblkunden MODIFY COLUMN K_Nr INT NOT NULL AUTO_INCREMENT;

否则你应该在创建表的脚本中添加自动增加子句。


2
投票

很明显,你有另一列是主键,默认值为 0'0'.

你的表格应该是这样的

create table tblkunden (
    kunden_id int auto_increment primary key,
    k_name varchar(<whatever>)
);

然后你的插入就可以了

一个主键不应该有一个默认值。 简单地将它声明为一个 primary key 即不能 null 并且不能插入重复的内容。 宣布它为 auto_increment 确保该值是以 insert.


0
投票

尝试 -

INSERT INTO tblkunden (K_Nr, k_name)
VALUES(1,'Hans'),
(2,'Franz'),
(3, 'Peter');

这是因为你不能在主键内有一个NULL,也就是k_Nr colummn,因为它是主键,所以需要是一个唯一的值。

你也可以使用主键作为自动递增,这在上面的一个答案中提到过,这将使每个值递增1,如果需要的话,你可以将其改为不同的递增。

希望这能让你明白。

© www.soinside.com 2019 - 2024. All rights reserved.