Is Primary Key Is Mandatory
May 19, 2008
Hello DBA and Experts
Is Primary Key mandatory for all tables?
I have a reporting database just for reports.
There are SSIS jobs which downloads data from Transaction database to reporting database.
I have 5 tables in reporting database with no primary key hence no clustered index.
Is it really mandatory to have primary key.
Example
A master table say EmployeeMaster with columns PK_EmpID, EmpName and with clustered index on column PK_EmpID
There is other table say EmployeeAddress with columns FK_EmpID, City with no clustered index but non-clustered index on column FK_EmpID which is a foreign key reference to EmployeeMaster.PK_EmpID
In my report SQL queries when I need to SELECT data from EmployeeAddress, I always join EmployeeMaster with EmployeeAddress on EmployeeAddress.FK_EmpID = EmployeeMaster.PK_EmpID.
My question, do I really need a Primary key on table EmployeeAddress though no where I am using it?
I am looking for better option from performance point of view.
In the tables there will be upto 1 lakh records.
Thank you, in advance.
View 9 Replies
ADVERTISEMENT
Mar 7, 2007
I am having trouble getting my head round participation for some scenarios. Consider the following:
River MUST flow through 1 or more cities.
City MUST have at least 1 river.
This is represented the pk of River being put as a fk in city AND (to represent that city must have a river), the foreign key does NOT allow nulls.
So how about...
River MAY flow through 0,1 or more cities. City MAY have ONLY 1 river.
This time we allow the foreign key in city to have NULLs, but how about the otherside, the pk of river. How do I represent the MAY here, and a pk value cannot be null.
Thanks
Drew
View 20 Replies
View Related
Jan 11, 2007
Uma writes "Hi Dear,
I have A Table , Which Primary key consists of 6 columns.
total Number of Columns in the table are 16. Now i Want to Convert my Composite Primary key into simple primary key.there are already 2200 records in the table and no referential integrity (foriegn key ) exist.
may i convert Composite Primary key into simple primary key in thr table like this.
Thanks,
Uma"
View 1 Replies
View Related
Aug 28, 2002
Hi all,
Can anyone suggest me on Adding primary key to a table which has already a primary key.
Thanks,
Jeyam
View 9 Replies
View Related
Aug 13, 2007
Hi,
I have recently been looking at a database and wondered if anyone can tell me what the advantages are supporting a unique collumn, which can essentially be seen as the primary key, with an identity seed integer primary key.
For example:
id [unique integer auto incremented primary key - not null],
ClientCode [unique index varchar - not null],
name [varchar null],
surname [varchar null]
isn't it just better to use ClientCode as the primary key straight of because when one references the above table, it can be done easier with the ClientCode since you dont have to do a lookup on the ClientCode everytime.
Regards
Mike
View 7 Replies
View Related
Feb 4, 2015
We have a table, which has one clustered index and one non clustered index(primary key). I want to drop the existing clustered index and make the primary key as clustered. Is there any easy way to do that. Will Drop_Existing support on this matter?
View 2 Replies
View Related
Jan 28, 2004
Hi all
I have the following table
CREATE TABLE [dbo].[property_instance] (
[property_instance_id] [int] IDENTITY (1, 1) NOT NULL ,
[application_id] [int] NOT NULL ,
[owner_id] [nvarchar] (100) NOT NULL ,
[property_id] [int] NOT NULL ,
[owner_type_id] [int] NOT NULL ,
[property_value] [ntext] NOT NULL ,
[date_created] [datetime] NOT NULL ,
[date_modified] [datetime] NULL
)
I have created an 'artificial' primary key, property_instance_id. The 'true' primary key is application_id, owner_id, property_id and owner_type_id
In this specific instance
- property_instance_id will never be a foreign key into another table
- queries will generally use application_id, owner_id, property_id and owner_type_id in the WHERE clause when searching for a particular row
- Once inserted, none of the application_id, owner_id, property_id or owner_type_id columns will ever be modified
I generally like to create artificial primary keys whenever the primary key would otherwise consist of more than 2 columns.
What do people think the advantages and disadvantages of each technique are? Do you recommend I go with the existing model, or should I remove the artificial primary key column and just go with a 4 column primary key for this table?
Thanks Matt
View 5 Replies
View Related
Aug 31, 2006
Hello all,I'm taking over a project from another developer and i've run into a bit of a problem. This developer had a bad habit of not using primary keys when designing various databases used by his programs. So now i've got approx 1000 tables all of which do not have primary keys assigned. Does anyone know of a tsql script that i can run that will loop through each table and add a primary key field?Thanks in advance?Richard M.
View 2 Replies
View Related
Aug 16, 2007
I have a Department Table.
Can any one tell me its Primary Key.
I have the order
AutoNumber, D + AutoNumber, Code,
Can you help me regarding this.
Because some people never like to use AutoNumber.
That's why I am confused.
View 3 Replies
View Related
Nov 8, 2007
Hi..
I'm going to build database of university, but I have problem with primaru key,
This is the situation:
there are many faculities and each one has many departments,
each department has many courses,
each course has many sections..
The problem:
I want to make those fields in the same table and make the primary key generate from other fields,
(i.e)
I want the faculity be integer from 4 digit "Example the first faculity start with 1000 the second 2000 and so on" and the the department of each faculity will generate its value from the faculity number+interger number from 3digit "Example the department of the first faculity start with 1100 and the second on will be 1200 and so on "
the same thing will repeate for courses and sections so the sectionsID will be the primary key.
Do you know hoew this idea can be implement by SQL server 2005?
Please help me as soon as possible.
View 13 Replies
View Related
Mar 23, 2005
A column will be Primary Key. Others are B and C. I want A will contain B and C. I mean B data is X, C data is Y, A will be XY. How can i do this? Can i set in MSSQL or need ASP.NET?
View 1 Replies
View Related
Dec 1, 1998
Heya,
I'm trying to setup a Primary Key on a SQL 6.5 database.
Is there a way to do this? When I hit advanced, it asks for me to select a field for the primary key, but it doesnt list fields to selct from, and I cant type it in.
Thanks for your help,
View 3 Replies
View Related
Jul 8, 2004
Hi All,
Using DTS i have imported the data from sybase to MS SQL server and all the data and tables were imported correctly.But the primary keys are not marked why is it like this?
This is not a one time job and this is meant to be for the customers also.I cannot ask the customers to mark the primary keys themselves. Is there a way to get the keys also.While doing DTS I have marked all the options correctly.
Please help.
View 5 Replies
View Related
Sep 23, 2004
I am setting up some tables where I used to have an identity column as the primary key. I changed it so the primary key is not a char field length of 20.
Is there going to be a big performance hit for this? I didn't like the identity field because every time I referenced a table I had to do a join to get the name of object.
EG:
-- Old way
tbProductionLabour
ID (pk)| Descr | fkCostCode
----------------------
1 | REBAR | 1J
tbTemplateLabour
fkTemplateID | fkLabourID | Manpower | Hours
--------------------------------------------
1 | 1 | 1 | 0.15
-- New way
tbProductionLabour
Labour | fkCostCode
---------------------
REBAR | 1J
tbTemplateLabour
fkTemplateID | fkLabour | Manpower | Hours
-------------------------------------------
1 | REBAR | 1 | 0.15
This is a very basic example, but you get the idea of what I am referring to.
Any thoughts?
Mike
View 11 Replies
View Related
Dec 3, 2004
I need to create my own primary key, how do I go about doing that?? In the database I am working in usually has a primary key that looks like this VL0008
the V is for Vendors, thats basically their number. Some of these Vendors need to be licensed and some dont, the ones that are not licensed dont get a number but I am to use that as the Primary/Index key I need to create one for those particual vendors. How can I go about doing that??? I was wanting to make it TL888 something like that.
View 7 Replies
View Related
Oct 17, 2005
i'm having problem to get th primary key from d database....
for your information i'm using java to get the primary key....
this is my code...
rs = stt.executeQuery("sp_columns "+table_db+";");
while(rs.next())
{
out.write(""+rs.getString("COLUMN_NAME"));
out.write(", "+rs.getString("TYPE_NAME"));
out.write(", "+rs.getString("IS_NULLABLE"));
}
rs = stt.executeQuery("sp_foreignkeys @table_name = N'table_db';");
but the problem is....
i get this error message...could anyone tell me what's the problem....
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]Could not
find server 'table_db' in sysservers. Execute sp_addlinkedserver to add th
e server to sysservers.
how do i solve this problem....
thanx to anyone who can help me...... :D
View 7 Replies
View Related
Oct 18, 2006
Please help:
I am creating a table called Bonus:
ProductHeading1
ProductHeading2 (could be null)
ProductHeading3(could be null)
Bonus
Datefrom
DateTo
.... what would be the primary key?! I know it would be DateTo and sumfing...... Since Heading2 and Heading3 could be null, they cannot be PK... and heading1 cannot be a PK because the following three DIFFERENT options could have the same heading1
Option 1) heading1 = "X" heading2 = Null heading3 = Null
Option 2) heading1 = "X" heading2 = "Y" heading3 = Null
Option 3) heading1 = "X" heading2 = "Y" heading3 = "Z"
... but I need a PK to make sure a bonus is not entered twice... I considered added an Id, but them how do I assign a id?! what would i make the id equal to???
Thanks....
View 14 Replies
View Related
Feb 3, 2008
Hi all,
Is it possible to have a primary key for SQL or Oracle or jet to have an alpanumeric beginning?
for example
1st District as a primary key
The statement is:
SELECT itemid FROM MASecurity WHERE userid=%d
Thanks,
Jj :)
View 14 Replies
View Related
Jan 27, 2004
What 's the way to know
the name of the column that is
the primary key of a table
View 3 Replies
View Related
Mar 11, 2004
In a recent course on database programming using Microsoft Access 2002. I noticed that the text entitiled New Perspectives Microsoft Access 2002 stated that a primary key could only be used once per table. But If I am not mistaken could one use the select key to select more than one primary key within a table.
View 8 Replies
View Related
Apr 14, 2008
Hi guys,
Is there a method in sql server 2005 to format the primary key so it can be alphanumberic?
Thanks.
View 2 Replies
View Related
May 5, 2008
Violation of PRIMARY KEY constraint 'PK_Dunning_TBL'. Cannot insert duplicate key in object 'Dunning_TBL'.
The statement has been terminated.
(0 row(s) affected)
Msg 2627, Level 14, State 1, Procedure GenerateFiles_FST_SP, Line 220
Violation of PRIMARY KEY constraint 'PK_Exceptions_TBL'. Cannot insert duplicate key in object 'Exceptions_TBL'.
The statement has been terminated.
i got this error how can i resolve this?
View 4 Replies
View Related
May 23, 2008
Hi,
I am designing a database for containing the info for the employees in the institution. My dilemma:
-Should I use an sql autonumber primary key?
or
-should I merge lastName+FirstName+middleName into one field and use this string as the primary key?
thank you
View 6 Replies
View Related
Jun 17, 2008
I'm new to these forums, and I'm not a database developer, per se, so please forgive me if I make any newb'ish comments.
I have a lookup table called tblCars, that has two columns, cars_id and cars_title. Typically what I do with tables like this is I make cars_id an autonumber, and cars_title the primary key.
The cars_title would contain unique data such as Ford, Chevy, Toyota, etc, which is why I like to make it the primary key (ie - guarantee that it remains unique and no duplicates are ever placed in it).
I would then create an index on cars_id so that I could use it in foreign key constraints.
However, I'm being told by a number of people that it is incorrect to make cars_title the primary key, and that the autonumber field should be the primary key. Yet I am having trouble arriving at a real good reason as to why this is the correct way to do it. I like the warm-fuzzies that I get knowing that no one can accidentally insert a duplicate car title into tblCars because of the primary key constraint.
Thanks in advance for any thoughts or insights on this.
View 6 Replies
View Related
Feb 2, 2006
I've noticed that some of my tables have primary keys that are not referenced by a foreign key in another table, is this indicative of bad design?
Jill
View 2 Replies
View Related
Nov 8, 2007
Hi..
I'm going to build database of university, but I have problem with primaru key,
This is the situation:
there are many faculities and each one has many departments,
each department has many courses,
each course has many sections..
The problem:
I want to make those fields in the same table and make the primary key generate from other fields,
(i.e)
I want the faculity be integer from 4 digit "Example the first faculity start with 1000 the second 2000 and so on" and the the department of each faculity will generate its value from the faculity number+interger number from 3digit "Example the department of the first faculity start with 1100 and the second on will be 1200 and so on "
the same thing will repeate for courses and sections so the sectionsID will be the primary key.
Do you know hoew this idea can be implement by SQL server 2005?
Please help me as soon as possible.
View 4 Replies
View Related
Jan 17, 2008
Hi experts, I would like to ask how to set 2 primary keys in one table?
View 6 Replies
View Related
Mar 19, 2008
How can I make the combination of two columns as the primary key?
Thanks
View 1 Replies
View Related
Mar 24, 2008
Hello,
I am creating a table where two of the columns are:
Social Number ID and Passport ID.
Considering both are unique which should I use for Primary Key?
Or should I create a ID from both columns? And how?
Thanks,
Miguel
View 7 Replies
View Related
Jul 23, 2005
Hi,Can someone give me advice ( or link to a webpage ) about how can I useprimary key in my database and how can I use it for optimizing thespeed of my database.Thanks.
View 1 Replies
View Related
Jul 23, 2005
Prompt me, what for need "primary key" in the database table?
View 4 Replies
View Related
Jul 20, 2005
I need to insert a row into a table in SQL Server 2000. The primarykey for the row is an identity type, so it auto-numbers for me withoutneeding to put in the value in the insert statement.My problem, is that after i insert a row, i need to insert another rowin a different table that references the first row. To do that i needto know the primary key for the original row.How can i tell what the primary key was? In Oracle, you would checkthe sequence before the original insert. Is there a similar featurein SQL Server? And how would you use it?(I'm using C# ADO)- Paul
View 2 Replies
View Related
Mar 16, 2007
hey can any one pls reply me how to set primary key in a table.
pls post a query.
thanks
View 1 Replies
View Related