创建主键为自动递增的表,默认值为 10000


creating a table with a primary key that is auto increment with default values of 10000

"CREATE TABLE dummy
(
tnum UNSIGNED INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY (tnum),
)";
ALTER TABLE dummy AUTO_INCREMENT = 10000;

这未运行。我想知道导致错误的原因,以及替代方案,以便我可以创建一个默认值为 10000 的自动递增主键。

Unsigned 非常适合AUTO_INCREMENT列!它为您提供了两倍的可能值!

将查询更改为以下内容:

CREATE TABLE dummy (
    tnum INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY
) AUTO_INCREMENT=10000

删除unsigned"(双引号)和PRIMARY KEY (tnum),后的","(逗号)

CREATE TABLE dummy
(
tnum INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY (tnum)
);
ALTER TABLE dummy AUTO_INCREMENT = 10000;

它有效。

如果需要设置起始值auto_increment可以使用以下代码:

CREATE TABLE dummy
(
tnum INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY (tnum)
) AUTO_INCREMENT=10000;

这是因为您不能同时拥有自动增量和默认值,因此每个新条目的值都会递增。

看起来你对我来说更像是一个php错误,在你的php文件中显示一些代码,执行查询的部分不正确,

确保有匹配的单引号或双引号。 请记住,Yu 一次只能执行一个查询。

使用命令行或像MySQL Workbench这样的应用程序来创建和操作您的数据库

delimiter $$
CREATE TABLE `dummy` (
  `tnum` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`tnum`)
) ENGINE=InnoDB AUTO_INCREMENT=10000 DEFAULT CHARSET=latin1$$

如果您从某处复制和粘贴它,请注意,任何特殊/非 ascii 字符都会导致错误

从查询中删除UNSIGNED