Directly to the point, at one time I have a table like this:
create table item( item_id varchar(50), constraint pk_item1 primary key (item_id) }
However from my discussion one day, there is other option to include another
int datatype as the primary key. This is to make the design as uniform as it can (every table has a primary key named
create table item( id int, item_id varchar(50), constraint pk_item1 primary key (id) }
I don't seems agree with the second design as it add additional uneccessary cost and space. However I cannot find any silver bullet reason for the refusal. What is the worst impact of this design?
Please note I understand very well with the duplicated value in which can be handled with
unique index. I also understand the header-detail problem, in which can also be handled with