I have a database that I want to use transactional replication on but several of the tables don't have primary keys - is there a quick query that I can run that will return a list of the tables without PK's?
Thanks in advance for the help!
Kevin
Use the OBJECTPROPERTY function (the TableHasPrimaryKey option). See SQL
Server Books Online for more information.
HTH,
Vyas, MVP (SQL Server)
http://vyaskn.tripod.com/
Is .NET important for a database professional?
http://vyaskn.tripod.com/poll.htm
"Kevin" <anonymous@.discussions.microsoft.com> wrote in message
news:398BB944-469B-4C1B-AD9C-0E3500909484@.microsoft.com...
I have a database that I want to use transactional replication on but
several of the tables don't have primary keys - is there a quick query that
I can run that will return a list of the tables without PK's?
Thanks in advance for the help!
Kevin
|||Kevin,
assuming all objects are owned by dbo, some variation on the theme of:
select * from information_schema.tables
where table_type = 'BASE TABLE'
and table_name not in (select table_name from
information_schema.table_constraints where
constraint_type='Primary Key')
should do you.
Regards,
Paul Ibison
|||Thanks Paul - that worked great! I was close but the subselect was killing me!
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment