Call now: (800) 766-1884  


 SQL Server Tips
 SQL Server Training

 SQL Server Consulting
 SQL Server Support
 SQL Server Remote DBA

 SQL Server Scripts
 Scripts Menu




  SQL Server Tips by Gama and Naughter


Types of functions

There are three types of UDF's:

  • Scalar UDF's.

  • Inline Table-valued UDF's.

  • Multi-statement Table-valued UDF's.

How to call a scalar UDF:


SELECT UserName.UDFname()


How to call a table-valued UDF:




How to call a scalar system function:


SELECT master.dbo.fn_varbintohexstr(cast('aa' as binary(2)))


How to call a table-valued system function:


SELECT * FROM ::fn_helpcollations()


According to the returned value functions (including UDF's) can be:

Deterministic - When the returned value is always the same for the same input.

Nondeterministic - When the returned value is not exclusively dependent from the input.


Schema-Bound Functions

A UDF can be bound to the schema of any objects it references, such as tables, views, and other UDF's. Binding is specified with the SCHEMABINDING clause and the name of the object to be bound. The main advantage of schema binding is that if a UDF is bound to an object, the objectís schema cannot change unless the schema binding is dropped first.


Prerequisites for binding

  • All views and UDF's referenced by the function must be schema-bound.

  • All objects referenced by the function must be from the same database as the UDF.

  • All objects referenced by the function require the user to have REFERENCES permissions.

  • All objects referenced by the function are not referenced using a two-part name.


The above book excerpt is from:

Super SQL Server Systems
Turbocharge Database Performance with C++ External Procedures

ISBN: 0-9761573-2-2
Joseph Gama, P. J. Naughter


Burleson Consulting Remote DB Administration







Burleson is the America's Team

Note: The pages on this site were created as a support and training reference for use by our staff of DBA consultants.  If you find it confusing, please exit this page.

Errata?  SQL Server technology is changing and we strive to update our SQL Server support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:and include the URL for the page.

Burleson Consulting
SQL Server database support


Copyright © 1996 -  2013 by Vaaltech Web Services. All rights reserved.

Hit Counter