产品代码(pk)----varchar2(5)产品名称
e5nqia271#
------varchar2(1)但我想让一个id自动递增列成为主键,并在任何crud操作中访问它。。我能在主键产品代码存在的情况下这样做吗?。。。或者id列在这里没用??
qxsslcnc2#
如果您得到的要求表明您的主键应该是一个称为产品代码的varchar2(5)。我建议遵循这些要求,我看没有实际理由反对。你知道这个表中有多少条记录吗?你有理由相信所提供的要求会引起问题吗?如果是这样,请记录您的问题并要求澄清,但您似乎是一个承包商,我会听从客户的意见。
h5qlskok3#
mysql只能自动生成主键。使用新的 ID 自动生成并使现有 PRODUCT_CODE 列唯一,如:
ID
PRODUCT_CODE
create table product ( id int primary key not null auto_increment, product_code varchar(5) not null, product_name varchar(15) not null, product_type varchar(1), constraint uq_code unique (product_code) );
bq3bfh9z4#
------varchar2(15)产品类型
xxls0lw85#
使 product_id 主键作为 auto_increment 列。然后你可以定义 product_code 作为 unique 以及 not null .外键关系应使用 product_id 列。
product_id
auto_increment
product_code
unique
not null
5条答案
按热度按时间e5nqia271#
------varchar2(1)
但我想让一个id自动递增列成为主键,并在任何crud操作中访问它。。我能在主键产品代码存在的情况下这样做吗?。。。或者id列在这里没用??
qxsslcnc2#
如果您得到的要求表明您的主键应该是一个称为产品代码的varchar2(5)。我建议遵循这些要求,我看没有实际理由反对。
你知道这个表中有多少条记录吗?你有理由相信所提供的要求会引起问题吗?如果是这样,请记录您的问题并要求澄清,但您似乎是一个承包商,我会听从客户的意见。
h5qlskok3#
mysql只能自动生成主键。
使用新的
ID
自动生成并使现有PRODUCT_CODE
列唯一,如:bq3bfh9z4#
------varchar2(15)
产品类型
xxls0lw85#
使
product_id
主键作为auto_increment
列。然后你可以定义
product_code
作为unique
以及not null
.外键关系应使用
product_id
列。