Export (0) Print
Expand All

UserDefinedDataType Class

The UserDefinedDataType object represents a SQL Server user-defined data type.

Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

[EvaluationModeAttribute(AutomatedPolicyEvaluationMode.CheckOnSchedule)]
[PhysicalFacetAttribute]
public sealed class UserDefinedDataType : ScriptSchemaObjectBase, 
	ICreatable, IAlterable, IDroppable, IRenamable, IExtendedProperties, 
	IScriptable, ISfcSupportsDesignMode, IObjectPermission

The UserDefinedDataType type exposes the following members.

  NameDescription
Public methodUserDefinedDataType()Initializes a new instance of the UserDefinedDataType class.
Public methodUserDefinedDataType(Database, String)Initializes a new instance of the UserDefinedDataType class on the specified database and with the specified name.
Public methodUserDefinedDataType(Database, String, String)Initializes a new instance of the UserDefinedDataType class on the specified database and with the specified name and schema.
Top

  NameDescription
Public propertyAllowIdentityGets the Boolean property value that specifies whether the user-defined data type is able to participate in a column defined with the identity property.
Public propertyCollationGets the collation assigned to the user-defined data type.
Public propertyDefaultGets or sets a SQL Server default that is bound to the user-defined data type.
Public propertyDefaultSchemaGets or sets the SQL Server default schema for the user-defined data type.
Public propertyExtendedPropertiesGets the extended properties of the user-defined data type.
Public propertyIDGets an ID value that uniquely identifies the user-defined data type.
Public propertyIsSchemaOwnedGets a Boolean value that indicates whether the UserDefinedDataType object is owned by a schema.
Public propertyLengthGets or sets the number of characters in the user-defined data type.
Public propertyMaxLengthGets the maximum number of characters accepted by the user-defined data type.
Public propertyNameGets or sets a String value that specifies the name of the user defined data type. (Overrides ScriptSchemaObjectBase.Name.)
Public propertyNullableGets or sets the Boolean property value that specifies whether the user-defined data type accepts null values or not.
Public propertyNumericPrecisionGets or sets the maximum number of digits in a numeric value used in the definition of the user-defined data type.
Public propertyNumericScaleGets or sets the maximum number of digits to the right of the decimal point in a numeric value used in the definition of the user-defined data type.
Public propertyOwnerGets the name of the owner of the UserDefinedDataType object.
Public propertyParentGets or sets the Database object that is the parent of the UserDefinedDataType object.
Public propertyPropertiesGets a collection of Property objects that represent the object properties. (Inherited from SqlSmoObject.)
Public propertyRuleGets or sets a SQL Server rule that is bound to the user-defined data type.
Public propertyRuleSchemaGets or sets the SQL Server rule schema for the user-defined data type.
Public propertySchemaGets or sets a String value that specifies the name of the schema that contains the user defined data type. (Overrides ScriptSchemaObjectBase.Schema.)
Public propertyStateGets the state of the referenced object. (Inherited from SmoObjectBase.)
Public propertySystemTypeGets or sets the base system data type from which the user-defined data type is derived.
Public propertyUrnGets the Uniform Resource Name (URN) address value that uniquely identifies the object. (Inherited from SqlSmoObject.)
Public propertyUserDataGets or sets user-defined data associated with the referenced object. (Inherited from SmoObjectBase.)
Public propertyVariableLengthGets the Boolean property value that specifies whether the user-defined data type is variable in length.
Top

  NameDescription
Public methodAlterUpdates any UserDefinedDataType object property changes on the instance of Microsoft SQL Server. 
Public methodBindDefault(String, String)Binds a default to the user-defined data type.
Public methodBindDefault(String, String, Boolean)Binds a default to the user-defined data type.
Public methodBindRule(String, String)Binds a default to the user-defined data type.
Public methodBindRule(String, String, Boolean)Binds a default to the user-defined data type.
Public methodCreateCreates a user-defined data type on the instance of Microsoft SQL Server as defined by the UserDefinedType object.
Public methodDeny(ObjectPermissionSet, String)Denies the specified set of permissions for the specified grantee on the user-defined data type.
Public methodDeny(ObjectPermissionSet, String[])Denies the specified set of permissions for the specified grantees on the user-defined data type.
Public methodDeny(ObjectPermissionSet, String, Boolean)Denies the specified set of permissions for the specified grantee and other users that the grantee granted the specified set of permissions on the user-defined data type.
Public methodDeny(ObjectPermissionSet, String[], Boolean)Denies the specified set of permissions for the specified grantees and other users that the grantee granted the specified set of permissions on the user-defined data type.
Public methodDiscoverDiscovers a list of type Object. (Inherited from SqlSmoObject.)
Public methodDropRemoves the user-defined data type from the instance of Microsoft SQL Server.
Public methodEnumBoundColumnsEnumerates a list of columns to which the user-defined data type type is bound.
Public methodEnumObjectPermissions()Enumerates a list of object permissions for the user-defined data type.
Public methodEnumObjectPermissions(String)Enumerates a list of object permissions for a specified grantee on the user-defined data type.
Public methodEnumObjectPermissions(ObjectPermissionSet)Enumerates a list of object permissions for a specified permission on the user-defined data type.
Public methodEnumObjectPermissions(String, ObjectPermissionSet)Enumerates a list of object permissions for a specified grantee and a specified permission on the user-defined data type.
Public methodEquals (Inherited from Object.)
Protected methodFormatSqlVariantFormats an object as SqlVariant type. (Inherited from SqlSmoObject.)
Protected methodGetContextDBGets the context database that is associated with this object. (Inherited from SqlSmoObject.)
Protected methodGetDBNameGets the database name that is associated with the object. (Inherited from SqlSmoObject.)
Public methodGetHashCode (Inherited from Object.)
Protected methodGetPropValueGets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Protected methodGetPropValueOptionalGets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Protected methodGetPropValueOptionalAllowNullGets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Protected methodGetServerObjectGets the server of the SqlSmoObject object. (Inherited from SqlSmoObject.)
Public methodGetType (Inherited from Object.)
Public methodGrant(ObjectPermissionSet, String)Grants the specified set of permissions to the specified grantee on the user-defined data type.
Public methodGrant(ObjectPermissionSet, String[])Grants the specified set of permissions to the specified grantees on the user-defined data type.
Public methodGrant(ObjectPermissionSet, String, Boolean)Grants the specified set of permissions to the grantee and the ability to grant the specified set of permissions to other users on the user-defined data type.
Public methodGrant(ObjectPermissionSet, String[], Boolean)Grants the specified set pf permissions to the grantees and the ability to grant the specified set of permissions to other users on the user-defined data type.
Public methodGrant(ObjectPermissionSet, String, Boolean, String)Grants the specified set of permissions to the grantee and the ability to grant the set of permissions to other users on the user-defined data type under an assumed role.
Public methodGrant(ObjectPermissionSet, String[], Boolean, String)Grants the specified set of permissions to the grantees and the ability to grant the set of permissions to other users on the user-defined data type data type under an assumed role.
Public methodInitialize()Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.)
Public methodInitialize(Boolean)Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.)
Protected methodIsObjectInitializedVerifies whether the object has been initialized. (Inherited from SqlSmoObject.)
Protected methodIsObjectInSpaceVerifies whether the object is isolated or connected to the instance of SQL Server. (Inherited from SqlSmoObject.)
Public methodRefreshRefreshes the script name. (Inherited from ScriptNameObjectBase.)
Public methodRenameRenames the user defined data type.
Public methodRevoke(ObjectPermissionSet, String)Revokes a previously granted set of permissions from a grantee on the user-defined data type.
Public methodRevoke(ObjectPermissionSet, String[])Revokes a previously granted set of permissions from a list of grantees on the user-defined data type.
Public methodRevoke(ObjectPermissionSet, String, Boolean, Boolean)Revokes previously granted permissions from a grantee on the user-defined data type and any other users to whom the grantee has granted the specified set of permissions. The grantee is also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String[], Boolean, Boolean)Revokes previously granted permissions from grantees on the user-defined data type and any other users to whom the grantees have granted the specified set of permissions. The grantees are also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String, Boolean, Boolean, String)Revokes previously granted permissions from a grantee on the user-defined data type and any other users to whom the grantee has granted the specified set of permissions. The grantee is also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodRevoke(ObjectPermissionSet, String[], Boolean, Boolean, String)Revokes previously granted permissions from grantees on the user-defined data type and any other users to whom the grantees have granted the specified set of permissions. The grantees are also given the ability to revoke the specified set of permissions from other users under an assumed role.
Public methodScript()Generates a Transact-SQL script that can be used to re-create the user-defined data type.
Public methodScript(ScriptingOptions)Generates a Transact-SQL script that can be used to re-create the user-defined data type as specified by the script options.
Protected methodSetParentImplSets the parent of the SqlSmoObject to the newParent parameter. (Inherited from SqlSmoObject.)
Public methodToStringReturns a String that represents the referenced object. (Inherited from SqlSmoObject.)
Public methodUnbindDefault()Unbinds a default from the user-defined data type.
Public methodUnbindDefault(Boolean)Unbinds a default from the user-defined data type.
Public methodUnbindRule()Unbinds a rule from the user-defined data type.
Public methodUnbindRule(Boolean)Unbinds a rule from the user-defined data type.
Public methodValidateValidates the state of an object. (Inherited from SmoObjectBase.)
Top

  NameDescription
Public eventPropertyChangedRepresents the event that occurs when a property is changed. (Inherited from SqlSmoObject.)
Public eventPropertyMetadataChangedRepresents the event that occurs when property metadata changes. (Inherited from SqlSmoObject.)
Top

  NameDescription
Explicit interface implemetationPrivate methodIAlienObject.DiscoverDiscovers any dependencies. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetDomainRootReturns the root of the domain. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetParentGets the parent of this object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetPropertyTypeGets the type of the specified property. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetPropertyValueGets the value of the specified property. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.GetUrnGets the Unified Resource Name (URN) of the object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.ResolveGets the instance that contains the information about the object from the Unified Resource Name (URN) of the object. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.SetObjectStateSets the object state to the specified SfcObjectState value. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodIAlienObject.SetPropertyValueSets the property value. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate methodISfcPropertyProvider.GetPropertySetGets the interface reference to the set of properties of this object. (Inherited from SqlSmoObject.)
Explicit interface implemetationPrivate propertyISfcSupportsDesignMode.IsDesignModeGets a Boolean value that specifies whether the user defined data type supports design mode.
Top

To get UserDefinedDataType object permissions, users can be a member of the public fixed server role.

To set UserDefinedDataType object permissions, users must have CREATE TYPE permission in the parent database and ALTER permission on specified schema. If an assembly is specified, users must either own the assembly or have REFERENCES permission on it.

To create an user-defined data type data type, users must have CREATE TYPE permission in the parent database and ALTER permission on specified schema. If an assembly is specified, users must either own the assembly or have REFERENCES permission on it.

To drop a user-defined data type data type, users must have CONTROL permission on the type and ALTER permission on the specified schema.

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are safe for multithreaded operations. Any instance members are not guaranteed to be thread safe.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft