can foreign key take role of primary key?

Answer Posted / gaurav

Yes. This situation occurs in one-to-one relationships.

For example:

create table Table1
( T1_Id integer not null primary key
, T1_Data varchar(9) not null
)
create table Table2
( T2_Id integer not null primary key
, T2_Data varchar(37) not null
, foreign key (T2_Id) references Table1 (T1_Id)
)

Why would someone design two tables like this? If it's a
one-to-one relationship, couldn't you just include T2_Data
in Table1? Yes, you could, although then you would also need
to allow T2_Data to be NULL, if not every T1_Id has a
matching T2_Id—in this case it's actually a
one-to-zero-or-one relationship.

If it's a true one-to-one relationship, where every T1_Id
has a matching T2_Id, then you could combine them without
NULLs. Then the only reason why you might want separate
tables would be if T2_Data were (a) infrequently queried,
and (b) so large that it would result in many fewer physical
rows on a physical database page, which would imply poorer
performance for queries that used only T1_Data.

Is This Answer Correct ?    10 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

explain databases and sql server databases architecture? : Sql server database administration

523


Does sql server 2016 have ssms?

519


How to convert numeric values to integers in ms sql server?

534


How to Check if table exists in sql server?

619


What are the components of sql server service broker?

512






difference between Clustered index and non clustered index ?

581


What is it unwise to create wide clustered index keys?

586


what is unique and xaml nonclustered index

560


What are examples of triggers?

617


Will count(column) include columns with null values in its count?

671


How to change the password of a login name in ms sql server?

563


Explain datetime2 data type in sal server 2008?

549


What are the characteristics of modern DBMS?

626


How to get a list of columns using the "sp_help" stored procedure in ms sql server?

584


Explain the concept of recursive stored procedure.

497