Interface ISQLFunction
The system entity for clr sql functions which can be used in IDataset and ISQLWrapper sql
See https://help.lemonedge.com/help/settings/enterprise-tools/sql-functions/intro.html for more information
See https://docs.microsoft.com/en-us/sql/relational-databases/clr-integration-database-objects-user-defined-functions/clr-user-defined-aggregate-invoking-functions?view=sql-server-ver15 for information about sql clr functionsInherited Members
System.IEquatable<LemonEdge.API.Core.IBaseEntity>.Equals(LemonEdge.API.Core.IBaseEntity)
System.ComponentModel.INotifyPropertyChanged.PropertyChanged
System.ComponentModel.INotifyPropertyChanging.PropertyChanging
Namespace: LemonEdge.API.Entities
Assembly: API.dll
Syntax
[EntityDefinition(EntityID.SQLFunction, "dbo.LT_SQLFunctions", "SQLFunction", IsStandingDataEntity = false, HelpURL = "help/settings/enterprise-tools/sql-functions/intro.html", LabelColumn = "Name")]
[DefaultEntityIcon(ImageType.DatabaseAdd)]
public interface ISQLFunction : IBaseEntityWithPermissions, ISetCopier, IUserSpecific, IHasVersion, IShareAcrossAccounts, IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties
Properties
Assembly
The actual clr sql assembly.
Declaration
[EntityProperty(SQLType.VarBinary, false)]
[EntityDescription("The actual clr sql assembly.")]
byte[] Assembly { get; set; }
Property Value
Type | Description |
---|---|
System.Byte[] |
AssemblyName
The unique name for this clr assembly
Declaration
[EntityProperty(SQLType.NVarChar, (short)500, false)]
[EntityDescription("The unique name for this clr assembly.")]
[Required]
string AssemblyName { get; set; }
Property Value
Type | Description |
---|---|
System.String |
CreateSQL
The sql signature for creating this function
Declaration
[EntityProperty(SQLType.NVarChar, (short)500, false)]
[EntityDescription("The sql signature for creating this function.")]
[Required]
[PropertyValidation("!string.IsNullOrEmpty(MyItem.CreateSQL)", "!MyItem.CreateSQL.ContainsWholeWord(\"go\", StringComparison.InvariantCultureIgnoreCase) && !MyItem.CreateSQL.ContainsWholeWord(\"drop\", StringComparison.InvariantCultureIgnoreCase, new string[] { \"drop table #\" }) && !MyItem.CreateSQL.ContainsWholeWord(\"create\", StringComparison.InvariantCultureIgnoreCase, new string[] { \"create table #\" }) && !MyItem.CreateSQL.ContainsWholeWord(\"exec\", StringComparison.InvariantCultureIgnoreCase)", "Contains invalid sql.")]
string CreateSQL { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Description
The user friendly description for this clr sql function
Declaration
[EntityProperty(SQLType.NVarChar, (short)2500, true)]
[EntityDescription("The user friendly description for this clr sql function.")]
string Description { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Enabled
Indicates if this clr sql function is created and usable in the database.
Declaration
[EntityProperty(SQLType.Bit, false)]
[EntityDescription("Indicates if this clr sql function is created and usable in the database.")]
[Required]
bool Enabled { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
ExternalName
The external name for this sql clr function
Declaration
[EntityProperty(SQLType.NVarChar, (short)500, false)]
[EntityDescription("The external name for this sql clr function.")]
[Required]
string ExternalName { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Name
The unique user friendly name of this clr sql function
Declaration
[EntityProperty(SQLType.NVarChar, (short)500, false)]
[EntityDescription("The unique user friendly name of this clr sql function.")]
[Required]
string Name { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Type
The type of this clr sql function
Declaration
[EntityProperty(SQLType.SmallInt, false)]
[EntityDescription("The type of this clr sql function.")]
SQLFunctionType Type { get; set; }
Property Value
Type | Description |
---|---|
SQLFunctionType |