0

假设我创建了这张表

CREATE TABLE staff
(
id int(10),
dep int(1),
name varchar(45),
email varchar(45),
PRIMARY KEY (id),
FOREIGN KEY (dep) REFERENCES department(id)
);

但我不希望“id”是一个随机数,我希望它是每个条目的特定 10 数字整数,例如第一个条目的 id 应该具体为“3012302509”

所以我使用插入:

INSERT INTO staff VALUES (3012302509, 1, 'Arnar Arnarsson', 'arni@yorozuya.is');

但是,即使我写了上面所做的,ID 也会变成我写的“1510312374”以外的其他数字,我怎样才能让它接受我在插入命令中输入的数字作为 id?

4

2 回答 2

1

它看起来像一个值溢出。INT 可能有一个最大值,如mysql。这取决于您的数据库系统,哪种类型更适合您的值。在 MySQL 中,您可以使用 BIGINT 或 NUMERIC 代替

于 2013-10-16T10:22:01.077 回答
0

将列数据类型更改为 numeric(10,0)。

于 2013-10-16T10:19:27.267 回答