Saber restricción de una columna/tabla (II)

03/01/2008 - 13:51 por José Luis Capel - Aicom | Informe spam
Hola,

Pido disculpas por volver a plantear este tema.

La cuestión es... ¿Cómo averiguar las restricciones de una tabla/columna
concreta?

En su momento Alejando Mesa me indicó lo siguiente:

use tempdb
go


create table dbo.t1 (
c1 int not null primary key,
c2 int not null default(0)
)
go


select
object_name([id]) as [name],
col_name([id], colid) as [col_name],
[text]
from
dbo.syscomments
where
objectproperty([id], 'IsDefaultCnst') = 1
go


drop table dbo.t1
go


Con este código obtengo todas las restricciones tipo 'default'. Sin embargo
el nombre de la columna me aparece siempre a NULL.

¿Habría alguna forma de poder obtener el nombre de la columna?

¿Habría alguna forma de poder indicar en el WHERE la tabla sobre la que
queremos obtener información?

Saludos y gracias por vuestra ayuda.

José Luis Capel

SqlServer MSDE SP2
 

Leer las respuestas

#1 Maxi
03/01/2008 - 18:12 | Informe spam
Hola, ha intentado usar el procedimiento almacenado sp_helpconstraint ?


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"José Luis Capel - Aicom" escribió en el mensaje
news:
Hola,

Pido disculpas por volver a plantear este tema.

La cuestión es... ¿Cómo averiguar las restricciones de una tabla/columna
concreta?

En su momento Alejando Mesa me indicó lo siguiente:

use tempdb
go


create table dbo.t1 (
c1 int not null primary key,
c2 int not null default(0)
)
go


select
object_name([id]) as [name],
col_name([id], colid) as [col_name],
[text]
from
dbo.syscomments
where
objectproperty([id], 'IsDefaultCnst') = 1
go


drop table dbo.t1
go


Con este código obtengo todas las restricciones tipo 'default'. Sin
embargo el nombre de la columna me aparece siempre a NULL.

¿Habría alguna forma de poder obtener el nombre de la columna?

¿Habría alguna forma de poder indicar en el WHERE la tabla sobre la que
queremos obtener información?

Saludos y gracias por vuestra ayuda.

José Luis Capel

SqlServer MSDE SP2


Preguntas similares