Determinare se una Chiave primaria è presente in una tabella di databa...

venerdì 10 agosto 2007 - 11.27

ciferrara Profilo | Newbie

Salve

Qualcuno sa come sia possibile verificare se presenta una chiave primaria su tabelle di un db di MSSQL?

Praticamente devo verificare su tutte le tabella quali no hanno la chiave primaria.

grazie


Ciferrara

Ciciu Profilo | Senior Member

Ciao.
Prova questo script, lanciato sul db che contiene le Tue tabelle di cui dubiti l'esistenza di una Primary Key.

select name from sys.tables t
where not exists (select 'x'
from sys.indexes i
where i.object_id = t.object_id and
is_primary_key = 1)


Dovrebbe restituirTi l'elenco delle tabelle sprovviste di Primary Key.

Ciao - FabioG
Fabio G

ciferrara Profilo | Newbie

io ho cmq risolto cosi

Dim strsql As String = "SELECT COUNT(INFORMATION_SCHEMA.TABLES.TABLE_NAME) AS Numero, " & _
" INFORMATION_SCHEMA.TABLES.TABLE_NAME, " & _
" INFORMATION_SCHEMA.TABLE_CONSTRAINTS.CONSTRAINT_TYPE" & _
" FROM INFORMATION_SCHEMA.TABLES LEFT OUTER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS " & _
" ON INFORMATION_SCHEMA.TABLES.TABLE_NAME = INFORMATION_SCHEMA.TABLE_CONSTRAINTS.TABLE_NAME" & _
" Group by INFORMATION_SCHEMA.TABLES.TABLE_NAME," & _
" INFORMATION_SCHEMA.TABLE_CONSTRAINTS.CONSTRAINT_TYPE" & _
" order by INFORMATION_SCHEMA.TABLES.TABLE_NAME"


ciao
Ciferrara
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5