导入时的主键问题
Primary Key problems when importing
我正在构建数据库并将字段 A,版本号设置为主要字段。我 运行 遇到一个问题,发现重复键导致导入错误。
具体来说,release#“49221”是某个网站某个release的值。在不同的网站上,版本号是“0000000049221”
版本# 49221 与“0000000049221”完全不同。有没有办法让我将它们都导入到同一个 table 中,同时仍然保留字段 "release #" 作为主键?
您需要将主键定义为 CHAR 或 VARCHAR 而不是整数值。
这通常发生在给出隐式转换时,请检查您的主键类型。
例如:
CREATE TABLE TEST
(
COLUMN_1 INT,
COLUMN_2 VARCHAR(8)
)
INSERT INTO TEST
VALUES (4566,'00004566')
SELECT * FROM TEST WHERE COLUMN_1 = COLUMN_2
第二列,它转换为int,左边的零消失了,因为数字左边的零没有值(如你所知)。
将第二列类型更改为类型 varchar 或 char。
我正在构建数据库并将字段 A,版本号设置为主要字段。我 运行 遇到一个问题,发现重复键导致导入错误。
具体来说,release#“49221”是某个网站某个release的值。在不同的网站上,版本号是“0000000049221”
版本# 49221 与“0000000049221”完全不同。有没有办法让我将它们都导入到同一个 table 中,同时仍然保留字段 "release #" 作为主键?
您需要将主键定义为 CHAR 或 VARCHAR 而不是整数值。
这通常发生在给出隐式转换时,请检查您的主键类型。
例如:
CREATE TABLE TEST
(
COLUMN_1 INT,
COLUMN_2 VARCHAR(8)
)
INSERT INTO TEST
VALUES (4566,'00004566')
SELECT * FROM TEST WHERE COLUMN_1 = COLUMN_2
第二列,它转换为int,左边的零消失了,因为数字左边的零没有值(如你所知)。
将第二列类型更改为类型 varchar 或 char。