SQL Server/T-SQL Tutorial/System Settings/OBJECTPROPERTY
Содержание
Check with OBJECTPROPERTY function
<source lang="sql">
5> CREATE FUNCTION dbo.AveragePrice() 6> RETURNS money 7> WITH SCHEMABINDING 8> AS 9> BEGIN 10> RETURN (SELECT AVG(Price) FROM dbo.Titles) 11> END 12> GO 1> 2> SELECT OBJECTPROPERTY(OBJECT_ID("AveragePrice"), "IsDeterministic") 3> GO
1
(1 rows affected) 1> 2> drop FUNCTION dbo.AveragePrice; 3> GO</source>
Returning Information about User-Defined Functions
<source lang="sql">
Syntax for the OBJECTPROPERTY() Function OBJECTPROPERTY ( <object_id> , <property> ) IsScalarFunction IsInlineFunction IsTableFunction IsDeterministic IsSchemaBound SELECT
OBJECTPROPERTY(OBJECT_ID("dbo.fibonacci"), "IsScalarFunction")</source>
Use OBJECTPROPERTY and OBJECT_ID to check the table existance
<source lang="sql">
5> USE master 6> SELECT OBJECTPROPERTY(OBJECT_ID("syslockinfo"), "TableIsFake"), 7> OBJECTPROPERTY(OBJECT_ID("sysobjects"), "TableIsFake") 8> GO Changed database context to "master".
-----------
NULL NULL
(1 rows affected) 1></source>
Using the OBJECTPROPERTY Function to Check Whether a View is Indexable
<source lang="sql">
SELECT OBJECTPROPERTY(OBJECT_ID("view_name"), "IsIndexable")</source>