From: <cin...@us...> - 2008-03-31 21:46:55
|
Revision: 546 http://firebird.svn.sourceforge.net/firebird/?rev=546&view=rev Author: cincura_net Date: 2008-03-31 14:45:27 -0700 (Mon, 31 Mar 2008) Log Message: ----------- Work on Entity FW. Modified Paths: -------------- NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/ProviderManifest.xml NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/SqlGenerator.cs NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/StoreSchemaDefinition.ssdl NETProvider/trunk/NETProvider/source/FirebirdSql/Data/FirebirdClient/FbProviderManifest.cs Modified: NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/ProviderManifest.xml =================================================================== --- NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/ProviderManifest.xml 2008-03-30 11:41:40 UTC (rev 545) +++ NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/ProviderManifest.xml 2008-03-31 21:45:27 UTC (rev 546) @@ -9,18 +9,16 @@ --> <ProviderManifest Namespace="FirebirdClient" xmlns="http://schemas.microsoft.com/ado/2006/04/edm/providermanifest"> <Types> - <!--<Type Name="tinyint" PrimitiveTypeKind="Byte"> - </Type>--> <Type Name="smallint" PrimitiveTypeKind="Int16"> </Type> <Type Name="int" PrimitiveTypeKind="Int32"> </Type> <Type Name="bigint" PrimitiveTypeKind="Int64"> </Type> - <Type Name="float" PrimitiveTypeKind="Double"> + <Type Name="float" PrimitiveTypeKind="Single"> </Type> - <!--<Type Name="real" PrimitiveTypeKind="Single"> - </Type>--> + <Type Name="double" PrimitiveTypeKind="Double"> + </Type> <Type Name="decimal" PrimitiveTypeKind="Decimal"> <FacetDescriptions> <Precision Minimum="1" Maximum="38" Default="18" Constant="false" /> @@ -39,34 +37,14 @@ <DateTimeKind Default="Unspecified" Constant="true" /> </FacetDescriptions> </Type> - <Type Name="smallint_bool" PrimitiveTypeKind="Boolean"> - </Type> - <!--<Type Name="smalldatetime" PrimitiveTypeKind="DateTime"> + <Type Name="date" PrimitiveTypeKind="DateTime"> <FacetDescriptions> <PreserveSeconds Default="false" Constant="true" /> <DateTimeKind Default="Unspecified" Constant="true" /> </FacetDescriptions> - </Type>--> - <!--<Type Name="datetime" PrimitiveTypeKind="DateTime"> - <FacetDescriptions> - <PreserveSeconds Default="true" Constant="true" /> - <DateTimeKind Default="Unspecified" Constant="true" /> - </FacetDescriptions> - </Type>--> - <!--<Type Name="nvarchar" PrimitiveTypeKind="String"> - <FacetDescriptions> - <MaxLength Minimum="1" Maximum="4000" Default="4000" Constant="false" /> - <Unicode Default="true" Constant="true" /> - <FixedLength Default="false" Constant="true" /> - </FacetDescriptions> - </Type>--> - <!--<Type Name="varchar" PrimitiveTypeKind="String"> - <FacetDescriptions> - <MaxLength Minimum="1" Maximum="8000" Default="8000" Constant="false" /> - <Unicode Default="false" Constant="true" /> - <FixedLength Default="false" Constant="true" /> - </FacetDescriptions> - </Type>--> + </Type> + <Type Name="smallint_bool" PrimitiveTypeKind="Boolean"> + </Type> <Type Name="char" PrimitiveTypeKind="String"> <FacetDescriptions> <MaxLength Minimum="1" Maximum="8000" Default="8000" Constant="false" /> @@ -74,20 +52,6 @@ <FixedLength Default="true" Constant="true" /> </FacetDescriptions> </Type> - <!--<Type Name="nchar" PrimitiveTypeKind="String"> - <FacetDescriptions> - <MaxLength Minimum="1" Maximum="4000" Default="4000" Constant="false" /> - <Unicode Default="true" Constant="true" /> - <FixedLength Default="true" Constant="true" /> - </FacetDescriptions> - </Type>--> - <!--<Type Name="varchar(max)" PrimitiveTypeKind="String"> - <FacetDescriptions> - <MaxLength Default="2147483647" Constant="true" /> - <Unicode Default="false" Constant="true" /> - <FixedLength Default="false" Constant="true" /> - </FacetDescriptions> - </Type>--> <Type Name="varchar" PrimitiveTypeKind="String"> <FacetDescriptions> <MaxLength Default="8000" Minimum="1" Maximum="8000" Constant="false" /> @@ -102,26 +66,16 @@ <FixedLength Default="false" Constant="true" /> </FacetDescriptions> </Type> - <!--<Type Name="ntext" PrimitiveTypeKind="String" > - <FacetDescriptions> - <MaxLength Default="1073741823" Constant="true" /> - <Unicode Default="true" Constant="true" /> - <FixedLength Default="false" Constant="true" /> - </FacetDescriptions> - </Type>--> - <!--<Type Name="text" PrimitiveTypeKind="String" > - <FacetDescriptions> - <MaxLength Default="2147483647" Constant="true" /> - <Unicode Default="false" Constant="true" /> - <FixedLength Default="false" Constant="true" /> - </FacetDescriptions> - </Type>--> </Types> <Functions> <!-- BEGIN AGGREGATES ############################################# --> <!-- AVG --> <Function Name="AVG" Aggregate="true" BuiltIn="true"> + <ReturnType Type="Int16" /> + <Parameter Name="arg" Type="Collection(Int16)" Mode="In" /> + </Function> + <Function Name="AVG" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> <Parameter Name="arg" Type="Collection(Int32)" Mode="In" /> </Function> @@ -129,85 +83,57 @@ <ReturnType Type="Int64" /> <Parameter Name="arg" Type="Collection(Int64)" Mode="In" /> </Function> - <!--<Function Name="AVG" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> - </Function>--> - <!--<Function Name="AVG" Aggregate="true" BuiltIn="true"> + <Function Name="AVG" Aggregate="true" BuiltIn="true"> <ReturnType Type="Double" /> + <Parameter Name="arg" Type="Collection(Single)" Mode="In" /> + </Function> + <Function Name="AVG" Aggregate="true" BuiltIn="true"> + <ReturnType Type="Double" /> <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> - </Function>--> + </Function> + <Function Name="AVG" Aggregate="true" BuiltIn="true"> + <ReturnType Type="Decimal" /> + <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> + </Function> - <!-- CHECKSUM_AGG --> - <!--<Function Name="CHECKSUM_AGG" Aggregate="true" BuiltIn="true" ParameterTypeSemantics="ExactMatchOnly"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Collection(Int32)" Mode="In" /> - </Function>--> - <!-- COUNT --> - <!--<Function Name="COUNT" Aggregate="true" BuiltIn="true"> + <Function Name="COUNT" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Collection(Boolean)" Mode="In" /> - </Function>--> + <Parameter Name="arg" Type="Collection(Int16)" Mode="In" /> + </Function> <Function Name="Count" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> <Parameter Name="arg" Type="Collection(Int32)" Mode="In" /> </Function> - <!--<Function Name="COUNT" Aggregate="true" BuiltIn="true"> + <Function Name="COUNT" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> + <Parameter Name="arg" Type="Collection(Int64)" Mode="In" /> </Function> <Function Name="COUNT" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Collection(DateTime)" Mode="In" /> + <Parameter Name="arg" Type="Collection(Single)" Mode="In" /> </Function> <Function Name="COUNT" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Collection(Guid)" Mode="In" /> + <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> </Function> <Function Name="COUNT" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Collection(String)" Mode="In" /> + <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> </Function> <Function Name="COUNT" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Collection(Binary)" Mode="In" /> - </Function>--> - - <!-- COUNT_BIG --> - <!--<Function Name="COUNT_BIG" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Collection(Boolean)" Mode="In" /> - </Function> - <Function Name="COUNT_BIG" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> - </Function> - <Function Name="COUNT_BIG" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Int64" /> <Parameter Name="arg" Type="Collection(DateTime)" Mode="In" /> </Function> - <Function Name="COUNT_BIG" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Collection(Guid)" Mode="In" /> - </Function> - <Function Name="COUNT_BIG" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Int64" /> + <Function Name="COUNT" Aggregate="true" BuiltIn="true"> + <ReturnType Type="Int32" /> <Parameter Name="arg" Type="Collection(String)" Mode="In" /> </Function> - <Function Name="COUNT_BIG" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Collection(Binary)" Mode="In" /> - </Function>--> <!-- GROUPING !NOT SUPPORTED! --> <!-- MAX --> <Function Name="MAX" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Byte" /> - <Parameter Name="arg" Type="Collection(Byte)" Mode="In" /> - </Function> - <Function Name="MAX" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int16" /> <Parameter Name="arg" Type="Collection(Int16)" Mode="In" /> </Function> @@ -220,36 +146,28 @@ <Parameter Name="arg" Type="Collection(Int64)" Mode="In" /> </Function> <Function Name="MAX" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> + <ReturnType Type="Single" /> + <Parameter Name="arg" Type="Collection(Single)" Mode="In" /> </Function> <Function Name="MAX" Aggregate="true" BuiltIn="true"> <ReturnType Type="Double" /> <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> </Function> <Function Name="MAX" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Single" /> - <Parameter Name="arg" Type="Collection(Single)" Mode="In" /> + <ReturnType Type="Decimal" /> + <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> </Function> <Function Name="MAX" Aggregate="true" BuiltIn="true"> <ReturnType Type="DateTime" /> <Parameter Name="arg" Type="Collection(DateTime)" Mode="In" /> </Function> - <!--<Function Name="MAX" Aggregate="true" BuiltIn="true"> + <Function Name="MAX" Aggregate="true" BuiltIn="true"> <ReturnType Type="String" /> <Parameter Name="arg" Type="Collection(String)" Mode="In" /> - </Function>--> - <!--<Function Name="MAX" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Binary" /> - <Parameter Name="arg" Type="Collection(Binary)" Mode="In" /> - </Function>--> + </Function> <!-- MIN --> <Function Name="MIN" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Byte" /> - <Parameter Name="arg" Type="Collection(Byte)" Mode="In" /> - </Function> - <Function Name="MIN" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int16" /> <Parameter Name="arg" Type="Collection(Int16)" Mode="In" /> </Function> @@ -262,32 +180,32 @@ <Parameter Name="arg" Type="Collection(Int64)" Mode="In" /> </Function> <Function Name="MIN" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> + <ReturnType Type="Single" /> + <Parameter Name="arg" Type="Collection(Single)" Mode="In" /> </Function> <Function Name="MIN" Aggregate="true" BuiltIn="true"> <ReturnType Type="Double" /> <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> </Function> <Function Name="MIN" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Single" /> - <Parameter Name="arg" Type="Collection(Single)" Mode="In" /> + <ReturnType Type="Decimal" /> + <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> </Function> <Function Name="MIN" Aggregate="true" BuiltIn="true"> <ReturnType Type="DateTime" /> <Parameter Name="arg" Type="Collection(DateTime)" Mode="In" /> </Function> - <!--<Function Name="MIN" Aggregate="true" BuiltIn="true"> + <Function Name="MIN" Aggregate="true" BuiltIn="true"> <ReturnType Type="String" /> <Parameter Name="arg" Type="Collection(String)" Mode="In" /> - </Function>--> - <!--<Function Name="MIN" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Binary" /> - <Parameter Name="arg" Type="Collection(Binary)" Mode="In" /> - </Function>--> + </Function> <!-- SUM --> <Function Name="SUM" Aggregate="true" BuiltIn="true"> + <ReturnType Type="Int16" /> + <Parameter Name="arg" Type="Collection(Int16)" Mode="In" /> + </Function> + <Function Name="SUM" Aggregate="true" BuiltIn="true"> <ReturnType Type="Int32" /> <Parameter Name="arg" Type="Collection(Int32)" Mode="In" /> </Function> @@ -296,126 +214,21 @@ <Parameter Name="arg" Type="Collection(Int64)" Mode="In" /> </Function> <Function Name="SUM" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> + <ReturnType Type="Single" /> + <Parameter Name="arg" Type="Collection(Single)" Mode="In" /> </Function> <Function Name="SUM" Aggregate="true" BuiltIn="true"> <ReturnType Type="Double" /> <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> </Function> + <Function Name="SUM" Aggregate="true" BuiltIn="true"> + <ReturnType Type="Decimal" /> + <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" /> + </Function> - <!-- STDEV --> - <!--<Function Name="STDEV" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> - </Function>--> - - <!-- STDEVP --> - <!--<Function Name="STDEVP" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> - </Function>--> - - <!-- VAR --> - <!--<Function Name="VAR" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> - </Function>--> - - <!-- VARP --> - <!--<Function Name="VARP" Aggregate="true" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Collection(Double)" Mode="In" /> - </Function>--> - <!-- END AGGREGATES ############################################# --> <!-- BEGIN STRING FUNCTIONS ##################################### --> - <!-- ASCII( arg ) - arg1: char, varchar (nvarchar is allowed by SQL server) - returns: int - --> - <!--<Function Name="ASCII" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="String" Unicode="true" Mode="In" /> - </Function>--> - - <!-- CHAR( arg ) - arg: tinyint, *smallint, *int, *bigint - returns: char(1) - --> - <!--<Function Name="CHAR" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> - </Function>--> - - <!-- CHARINDEX( strSearch, strTarget [, startLocation ] ) - strSearch: character expression - strTarget: character expression - startLocation: tinyint, smallint, int, bigint - returns: int, bigint - --> - <!--<Function Name="CHARINDEX" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="strSearch" Type="String" Mode="In" /> - <Parameter Name="strTarget" Type="String" Mode="In" /> - </Function> - <Function Name="CHARINDEX" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="strSearch" Type="Binary" Mode="In" /> - <Parameter Name="strTarget" Type="Binary" Mode="In" /> - </Function> - <Function Name="CHARINDEX" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="strSearch" Type="String" Mode="In" /> - <Parameter Name="strTarget" Type="String" Mode="In" /> - <Parameter Name="startLocation" Type="Int32" Mode="In" /> - </Function> - <Function Name="CHARINDEX" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="strSearch" Type="Binary" Mode="In" /> - <Parameter Name="strTarget" Type="Binary" Mode="In" /> - <Parameter Name="startLocation" Type="Int32" Mode="In" /> - </Function> - <Function Name="CHARINDEX" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="strSearch" Type="String" Mode="In" /> - <Parameter Name="strTarget" Type="String" Mode="In" /> - <Parameter Name="startLocation" Type="Int64" Mode="In" /> - </Function> - <Function Name="CHARINDEX" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="strSearch" Type="Binary" Mode="In" /> - <Parameter Name="strTarget" Type="Binary" Mode="In" /> - <Parameter Name="startLocation" Type="Int64" Mode="In" /> - </Function>--> - - <!-- DIFFERENCE( str1, str2 ) - str1: varchar - str2: varchar - returns: int - --> - <!--<Function Name="DIFFERENCE" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="str1" Type="String" Mode="In" /> - <Parameter Name="str2" Type="String" Mode="In" /> - </Function>--> - <!-- LEFT( str, count ) - str: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - count: tinyint, smallint, int, bigint - returns: varchar, nvarchar - --> - <!--<Function Name="LEFT" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="str" Type="String" Unicode="false" Mode="In" /> - <Parameter Name="count" Type="Int64" Mode="In" /> - </Function> - <Function Name="LEFT" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="str" Type="String" Unicode="true" Mode="In" /> - <Parameter Name="count" Type="Int64" Mode="In" /> - </Function>--> - <!-- LEN( string_expression ) string_expression: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) returns: int, bigint @@ -429,662 +242,41 @@ <Parameter Name="string_expression" Type="Binary" Mode="In" /> </Function>--> - <!-- LOWER( str ) - str: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: varchar, nvarchar - --> - <!--<Function Name="LOWER" BuiltIn="true"> + <!-- TRIM --> + <Function Name="TRIM" BuiltIn="true"> <ReturnType Type="String" Unicode="false" /> <Parameter Name="str" Type="String" Unicode="false" Mode="In" /> </Function> - - <Function Name="LOWER" BuiltIn="true"> + <Function Name="TRIM" BuiltIn="true"> <ReturnType Type="String" Unicode="true" /> <Parameter Name="str" Type="String" Unicode="true" Mode="In" /> - </Function>--> - - - <!-- LTRIM( str ) - str: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: varchar, nvarchar - --> - <!--<Function Name="LTRIM" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="str" Type="String" Unicode="false" Mode="In" /> </Function> - <Function Name="LTRIM" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="str" Type="String" Unicode="true" Mode="In" /> - </Function>--> - <!-- nchar( ncharCode ) - ncharCode: tinyint, smallint, int, bigint - returns: nchar(1) - --> - <!--<Function Name="NCHAR" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> - </Function>--> - - <!-- PATINDEX( strPattern, strTarget ) - strPattern: char, nchar, varchar, nvarchar - strTarget: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: int, bigint - --> - <!--<Function Name="PATINDEX" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="strPattern" Type="String" Mode="In" /> - <Parameter Name="strTarget" Type="String" Mode="In" /> - </Function>--> - - <!-- QUOTENAME( character_string [,quote_character] ) - character_string: nchar, nvarchar, nvarchar(max) - quote_character: nchar, char, varchar, nvarchar - returns: nvarchar - --> - <!--<Function Name="QUOTENAME" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="character_string" Type="String" Unicode="true" Mode="In" /> - </Function> - <Function Name="QUOTENAME" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="character_string" Type="String" Unicode="true" Mode="In" /> - <Parameter Name="quote_character" Type="String" Unicode="true" Mode="In" /> - </Function>--> - - <!-- REPLACE( strTarget, strSearch, strReplacement ) - strTarget: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - strSearch: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - strReplacement: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: varchar, nvarchar - --> - <!--<Function Name="REPLACE" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="strTarget" Type="String" Unicode="true" Mode="In" /> - <Parameter Name="strSearch" Type="String" Unicode="true" Mode="In" /> - <Parameter Name="strReplacement" Type="String" Unicode="true" Mode="In" /> - </Function> - <Function Name="REPLACE" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="strTarget" Type="String" Unicode="false" Mode="In" /> - <Parameter Name="strSearch" Type="String" Unicode="false" Mode="In" /> - <Parameter Name="strReplacement" Type="String" Unicode="false" Mode="In" /> - </Function>--> - - <!-- REPLICATE( strSource, count ) - strSource: varchar, nvarchar - count: tinyint, smallint, int - returns: varchar, nvarchar - --> - <!--<Function Name="REPLICATE" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="strTarget" Type="String" Unicode="false" Mode="In" /> - <Parameter Name="count" Type="Int32" Mode="In" /> - </Function> - <Function Name="REPLICATE" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="strTarget" Type="String" Unicode="true" Mode="In" /> - <Parameter Name="count" Type="Int32" Mode="In" /> - </Function>--> - - <!-- REVERSE( arg ) - arg: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: varchar, nvarchar - --> - <!--<Function Name="REVERSE" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="arg" Type="String" Unicode="false" Mode="In" /> - </Function> - <Function Name="REVERSE" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="arg" Type="String" Unicode="true" Mode="In" /> - </Function>--> - - <!-- RIGHT( atr, count ) - str: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - count: tinyint, smallint, int, bigint - returns: varchar, nvarchar - --> - <!--<Function Name="RIGHT" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="str" Type="String" Unicode="false" Mode="In" /> - <Parameter Name="count" Type="Int64" Mode="In" /> - </Function> - <Function Name="RIGHT" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="str" Type="String" Unicode="true" Mode="In" /> - <Parameter Name="count" Type="Int64" Mode="In" /> - </Function>--> - - <!-- RTRIM( arg1 ) - str: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: varchar, nvarchar - --> - <!--<Function Name="RTRIM" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="str" Type="String" Unicode="false" Mode="In" /> - </Function> - <Function Name="RTRIM" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="str" Type="String" Unicode="true" Mode="In" /> - </Function>--> - - <!-- SOUNDEX( arg ) - arg: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: varchar - --> - <!--<Function Name="SOUNDEX" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="arg" Type="String" Mode="In" /> - </Function>--> - - <!-- SPACE( arg ) - arg: tinyint, smallint, int - returns: char - --> - <!--<Function Name="SPACE" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="arg1" Type="Int32" Mode="In" /> - </Function>--> - - <!-- STR( number [,length [,decimal]] ) - number: float - length: int - decimal: int - returns: char - --> - <!--<Function Name="STR" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="number" Type="Double" Mode="In" /> - </Function> - <Function Name="STR" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="number" Type="Double" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - </Function> - <Function Name="STR" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="number" Type="Double" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - <Parameter Name="decimal" Type="Int32" Mode="In" /> - </Function>--> - - <!-- STUFF( strInput, start, length, strReplacement ) - strInput: varchar, nvarchar - start: int - legth: int - strReplacement: varchar, nvarchar - returns: int, bigint - --> - <!--<Function Name="STUFF" BuiltIn="true"> - <ReturnType Type="String" Unicode="false" /> - <Parameter Name="strInput" Type="String" Unicode="false" Mode="In" /> - <Parameter Name="start" Type="Int32" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - <Parameter Name="strReplacement" Type="String" Unicode="false" Mode="In" /> - </Function> - <Function Name="STUFF" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="strInput" Type="String" Unicode="true" Mode="In" /> - <Parameter Name="start" Type="Int32" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - <Parameter Name="strReplacement" Type="String" Unicode="true" Mode="In" /> - </Function>--> - - <!-- SUBSTRING( str, start, length ) - str: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - start: tinyint, smallint, int, bigint - length: tinyint, smallint, int, bigint - returns: varchar, nvarchar - --> - <!--<Function Name="SUBSTRING" BuiltIn="true"> + <!-- SUBSTRING --> + <Function Name="SUBSTRING" BuiltIn="true"> <ReturnType Type="String" /> <Parameter Name="str" Type="String" Mode="In" /> <Parameter Name="start" Type="Int64" Mode="In" /> <Parameter Name="length" Type="Int64" Mode="In" /> </Function> - <Function Name="SUBSTRING" BuiltIn="true"> - <ReturnType Type="Binary" /> - <Parameter Name="str" Type="Binary" Mode="In" /> - <Parameter Name="start" Type="Int64" Mode="In" /> - <Parameter Name="length" Type="Int64" Mode="In" /> - </Function>--> - <!-- UNICODE( arg ) - arg: nchar, nvarchar - returns: int - --> - <!--<Function Name="UNICODE" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="String" Unicode="true" Mode="In" /> - </Function>--> - - <!-- UPPER( arg ) - str: char, nchar, varchar, nvarchar, varchar(max), nvarchar(max) - returns: varchar, nvarchar - --> - <!--<Function Name="UPPER" BuiltIn="true"> + <!-- UPPER --> + <Function Name="UPPER" BuiltIn="true"> <ReturnType Type="String" Unicode="true" /> <Parameter Name="str" Type="String" Unicode="true" Mode="In" /> </Function> <Function Name="UPPER" BuiltIn="true"> <ReturnType Type="String" Unicode="false" /> <Parameter Name="str" Type="String" Unicode="false" Mode="In" /> - </Function>--> + </Function> <!-- END STRING FUNCTIONS ####################################### --> <!-- BEGIN MATH FUNCTIONS ####################################### --> - <!-- ABS( arg ) - arg: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - returns: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - --> - <!--<Function Name="ABS" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> - </Function> - <Function Name="ABS" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Int64" Mode="In" /> - </Function> - <Function Name="ABS" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Decimal" Mode="In" /> - </Function> - <Function Name="ABS" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- ACOS( arg ) - arg: float - returns: float - --> - <!--<Function Name="ACOS" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg1" Type="Double" Mode="In" /> - </Function>--> - - <!-- ASIN( arg ) - arg: float - returns: float - --> - <!--<Function Name="ASIN" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- ATAN( arg ) - arg: float - returns: float - --> - <!--<Function Name="ATAN" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- ATN2( arg1, arg2 ) - arg1: float - arg2: float - returns: float - --> - <!--<Function Name="ATN2" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg1" Type="Double" Mode="In" /> - <Parameter Name="arg2" Type="Double" Mode="In" /> - </Function>--> - - <!-- CEILING( arg ) - arg: smalldatetime, datetime - returns: int - --> - <!--<Function Name="CEILING" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> - </Function> - <Function Name="CEILING" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Int64" Mode="In" /> - </Function> - <Function Name="CEILING" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Decimal" Mode="In" /> - </Function> - <Function Name="CEILING" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- COS( arg ) - arg: float - returns: float - --> - <!--<Function Name="COS" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- COT( arg ) - arg: float - returns: float - --> - <!--<Function Name="COT" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- DEGREES( arg ) - arg: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - returns: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - --> - <!--<Function Name="DEGREES" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Int32" Mode="In" /> - </Function> - <Function Name="DEGREES" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg1" Type="Int64" Mode="In" /> - </Function> - <Function Name="DEGREES" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg1" Type="Decimal" Mode="In" /> - </Function> - <Function Name="DEGREES" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg1" Type="Double" Mode="In" /> - </Function>--> - - <!-- EXP( arg ) - arg: float - returns: float - --> - <!--<Function Name="EXP" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- FLOOR( arg ) - arg: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - returns: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - --> - <!--<Function Name="FLOOR" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> - </Function> - <Function Name="FLOOR" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Int64" Mode="In" /> - </Function> - <Function Name="FLOOR" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Decimal" Mode="In" /> - </Function> - <Function Name="FLOOR" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- LOG( arg ) - arg: float - returns: float - --> - <!--<Function Name="LOG" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- LOG10( arg ) - arg: float - returns: float - --> - <!--<Function Name="LOG10" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- PI( ) - returns: float - --> - <!--<Function Name="PI" BuiltIn="true"> - <ReturnType Type="Double" /> - </Function>--> - - <!-- POWER( x, y ) - x: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - y: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - returns: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - --> - <!--<Function Name="POWER" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="x" Type="Int32" Mode="In" /> - <Parameter Name="y" Type="Double" Mode="In" /> - </Function> - <Function Name="POWER" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="x" Type="Int64" Mode="In" /> - <Parameter Name="y" Type="Double" Mode="In" /> - </Function> - <Function Name="POWER" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="x" Type="Decimal" Mode="In" /> - <Parameter Name="y" Type="Double" Mode="In" /> - </Function> - <Function Name="POWER" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="x" Type="Double" Mode="In" /> - <Parameter Name="y" Type="Double" Mode="In" /> - </Function>--> - - <!-- RADIANS( arg ) - arg: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - returns: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - --> - <!--<Function Name="RADIANS" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> - </Function> - <Function Name="RADIANS" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Int64" Mode="In" /> - </Function> - <Function Name="RADIANS" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Decimal" Mode="In" /> - </Function> - <Function Name="RADIANS" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- RAND( [seed] ) - seed: tinyint, smallint, int - returns: float - --> - <!--<Function Name="RAND" BuiltIn="true"> - <ReturnType Type="Double" /> - </Function> - <Function Name="RAND" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="seed" Type="Int32" Mode="In" /> - </Function>--> - - <!-- ROUND( numeric_expression, length [ ,function ] ) - numeric_expression: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - length: tinyint, smallint, int - function: tinyint, smallint, int - returns: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - --> - <!--<Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="numeric_expression" Type="Int32" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - </Function> - <Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="numeric_expression" Type="Int64" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - </Function> - <Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="numeric_expression" Type="Decimal" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - </Function> - <Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="numeric_expression" Type="Double" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - </Function> - <Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="numeric_expression" Type="Int32" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - <Parameter Name="function" Type="Int32" Mode="In" /> - </Function> - <Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="numeric_expression" Type="Int64" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - <Parameter Name="function" Type="Int32" Mode="In" /> - </Function> - <Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="numeric_expression" Type="Decimal" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - <Parameter Name="function" Type="Int32" Mode="In" /> - </Function> - <Function Name="ROUND" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="numeric_expression" Type="Double" Mode="In" /> - <Parameter Name="length" Type="Int32" Mode="In" /> - <Parameter Name="function" Type="Int32" Mode="In" /> - </Function>--> - - <!-- SIGN( arg ) - arg: tinyint, smallint, int, bigint, numeric, decimal, smallmoney, money, real, float - returns: bigint, numeric, decimal, money, float - --> - <!--<Function Name="SIGN" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> - </Function> - <Function Name="SIGN" BuiltIn="true"> - <ReturnType Type="Int64" /> - <Parameter Name="arg" Type="Int64" Mode="In" /> - </Function> - <Function Name="SIGN" BuiltIn="true"> - <ReturnType Type="Decimal" /> - <Parameter Name="arg" Type="Decimal" Mode="In" /> - </Function> - <Function Name="SIGN" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- SIN( arg ) - arg: float - returns: float - --> - <!--<Function Name="SIN" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- SQRT( arg ) - arg: float - returns: float - --> - <!--<Function Name="SQRT" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> - - <!-- SQUARE( arg ) - arg: smalldatetime, datetime - returns: int - --> - <!--<Function Name="SQUARE" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg1" Type="Double" Mode="In" /> - </Function>--> - - <!-- TAN( arg ) - arg: float - returns: float - --> - <!--<Function Name="TAN" BuiltIn="true"> - <ReturnType Type="Double" /> - <Parameter Name="arg" Type="Double" Mode="In" /> - </Function>--> <!-- END MATH FUNCTIONS ######################################### --> <!-- BEGIN DATE FUNCTIONS ####################################### --> - <!-- DATEADD - datepart: nvarchar - number: tinyint, smallint, int, bigint, numeric, decimal, real, float - date: smalldatetime, datetime, varchar, nvarchar, char, nchar - returns: SMALLTIME, datetime - --> - <!--<Function Name="DATEADD" BuiltIn="true"> - <ReturnType Type="DateTime" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="number" Type="Double" Mode="In" /> - <Parameter Name="date" Type="DateTime" Mode="In" /> - </Function> - <Function Name="DATEADD" BuiltIn="true"> - <ReturnType Type="DateTime" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="number" Type="Double" Mode="In" /> - <Parameter Name="date" Type="String" Mode="In" /> - </Function>--> - - <!-- DATEDIFF( datepart, startdate, enddate ) - datepart: nvarchar - startdate: smalldatetime, datetime, char, nchar, varchar, nvarchar - enddate: smalldatetime, datetime, char, nchar, varchar, nvarchar - returns: int - --> - <!--<Function Name="DATEDIFF" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="startdate" Type="DateTime" Mode="In" /> - <Parameter Name="enddate" Type="DateTime" Mode="In" /> - </Function> - <Function Name="DATEDIFF" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="startdate" Type="String" Mode="In" /> - <Parameter Name="enddate" Type="DateTime" Mode="In" /> - </Function> - <Function Name="DATEDIFF" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="startdate" Type="DateTime" Mode="In" /> - <Parameter Name="enddate" Type="String" Mode="In" /> - </Function> - <Function Name="DATEDIFF" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="startdate" Type="String" Mode="In" /> - <Parameter Name="enddate" Type="String" Mode="In" /> - </Function>--> - - <!-- DATENAME( datepart, date ) - datepart: nvarchar - date: smalldatetime, datetime, char, nchar, varchar, nvarchar - returns: nvarchar - --> - <!--<Function Name="DATENAME" BuiltIn="true"> - <ReturnType Type="String" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="date" Type="DateTime" Mode="In" /> - </Function> - <Function Name="DATENAME" BuiltIn="true"> - <ReturnType Type="String" /> - <Parameter Name="datepart" Type="String" Mode="In" /> - <Parameter Name="date" Type="String" Mode="In" /> - </Function>--> - <!-- DATEPART( datepart, date ) datepart: nvarchar date: smalldatetime, datetime, char, nchar, varchar, nvarchar @@ -1100,224 +292,22 @@ <Parameter Name="datepart" Type="String" Mode="In" /> <Parameter Name="date" Type="String" Mode="In" /> </Function>--> - - <!-- DAY( date ) - date: smalldatetime, datetime - returns: int - --> - <!--<Function Name="DAY" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="date" Type="DateTime" Mode="In" /> - </Function> - <Function Name="DAY" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="date" Type="String" Mode="In" /> - </Function>--> - - <!-- GETDATE() - returns: datetime - --> - <!--<Function Name="GETDATE" BuiltIn="true"> - <ReturnType Type="DateTime" PreserveSeconds="true" /> - </Function>--> - - - <!-- GETUTCDATE() - returns: datetime - --> - <!--<Function Name="GETUTCDATE" BuiltIn="true"> - <ReturnType Type="DateTime" PreserveSeconds="true" /> - </Function>--> - - <!-- MONTH( date ) - date: smalldatetime, datetime - returns: int - --> - <!--<Function Name="MONTH" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="date" Type="DateTime" Mode="In" /> - </Function> - <Function Name="MONTH" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="date" Type="String" Mode="In" /> - </Function>--> - - <!-- YEAR( date ) - date: smalldatetime, datetime - returns: int - --> - <!--<Function Name="YEAR" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="date" Type="DateTime" Mode="In" /> - </Function> - <Function Name="YEAR" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="date" Type="String" Mode="In" /> - </Function>--> <!-- END DATE FUNCTIONS ######################################### --> <!-- BEGIN SYSTEM FUNCTIONS ##################################### --> - <!-- DATALENGTH( arg ) - arg: any - returns: int, bigint - --> - <!--<Function Name="DATALENGTH" BuiltIn="true" ParameterTypeSemantics="AllowImplicitPromotion"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Boolean" Mode="In" /> + <!-- CURRENT_TIMESTAMP --> + <Function Name="CURRENT_TIMESTAMP" BuiltIn="true" NiladicFunction="true"> + <ReturnType Type="DateTime" PreserveSeconds="true" /> </Function> - <Function Name="DATALENGTH" BuiltIn="true" ParameterTypeSemantics="AllowImplicitPromotion"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Double" Mode="In" /> + <!-- CURRENT_DATE --> + <Function Name="CURRENT_DATE" BuiltIn="true" NiladicFunction="true"> + <ReturnType Type="DateTime" PreserveSeconds="false" /> </Function> - <Function Name="DATALENGTH" BuiltIn="true" ParameterTypeSemantics="AllowImplicitPromotion"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="DateTime" Mode="In" /> - </Function> - <Function Name="DATALENGTH" BuiltIn="true" ParameterTypeSemantics="AllowImplicitPromotion"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="String" Mode="In" /> - </Function> - <Function Name="DATALENGTH" BuiltIn="true" ParameterTypeSemantics="AllowImplicitPromotion"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Binary" Mode="In" /> - </Function> - <Function Name="DATALENGTH" BuiltIn="true" ParameterTypeSemantics="AllowImplicitPromotion"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="Guid" Mode="In" /> - </Function>--> - <!-- CHECKSUM --> - <!--<Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Boolean" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Double" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="String" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="DateTime" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Binary" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Guid" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Boolean" Mode="In" /> - <Parameter Name="arg2" Type="Boolean" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Double" Mode="In" /> - <Parameter Name="arg2" Type="Double" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="String" Mode="In" /> - <Parameter Name="arg2" Type="String" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="DateTime" Mode="In" /> - <Parameter Name="arg2" Type="DateTime" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Binary" Mode="In" /> - <Parameter Name="arg2" Type="Binary" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Guid" Mode="In" /> - <Parameter Name="arg2" Type="Guid" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Boolean" Mode="In" /> - <Parameter Name="arg2" Type="Boolean" Mode="In" /> - <Parameter Name="arg3" Type="Boolean" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Double" Mode="In" /> - <Parameter Name="arg2" Type="Double" Mode="In" /> - <Parameter Name="arg3" Type="Double" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="String" Mode="In" /> - <Parameter Name="arg2" Type="String" Mode="In" /> - <Parameter Name="arg3" Type="String" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="DateTime" Mode="In" /> - <Parameter Name="arg2" Type="DateTime" Mode="In" /> - <Parameter Name="arg3" Type="DateTime" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Binary" Mode="In" /> - <Parameter Name="arg2" Type="Binary" Mode="In" /> - <Parameter Name="arg3" Type="Binary" Mode="In" /> - </Function> - <Function Name="CHECKSUM" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg1" Type="Guid" Mode="In" /> - <Parameter Name="arg2" Type="Guid" Mode="In" /> - <Parameter Name="arg3" Type="Guid" Mode="In" /> - </Function>--> - - <!-- NEWID() --> - <!--<Function Name="NEWID" BuiltIn="true"> - <ReturnType Type="Guid" /> - </Function>--> - - <!-- CURRENT_TIMESTAMP --> - <!--<Function Name="CURRENT_TIMESTAMP" BuiltIn="true" NiladicFunction="true"> - <ReturnType Type="DateTime" PreserveSeconds="true" /> - </Function>--> - <!-- CURRENT_USER --> - <!--<Function Name="CURRENT_USER" BuiltIn="true" NiladicFunction="true"> + <Function Name="CURRENT_USER" BuiltIn="true" NiladicFunction="true"> <ReturnType Type="String" Unicode="false" /> - </Function>--> - - <!-- HOST_NAME() --> - <!--<Function Name="HOST_NAME" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - </Function>--> - - <!-- USER_NAME() --> - <!--<Function Name="USER_NAME" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - <Parameter Name="arg" Type="Int32" Mode="In" /> </Function> - <Function Name="USER_NAME" BuiltIn="true"> - <ReturnType Type="String" Unicode="true" /> - </Function>--> - - <!-- ISNUMERIC( arg ) //implicit conversion --> - <!--<Function Name="ISNUMERIC" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="String" Mode="In" /> - </Function>--> - - <!-- ISDATE( arg ) //implicit conversion --> - <!--<Function Name="ISDATE" BuiltIn="true"> - <ReturnType Type="Int32" /> - <Parameter Name="arg" Type="String" Mode="In" /> - </Function>--> <!-- END SYSTEM FUNCTIONS ####################################### --> </Functions> </ProviderManifest> Modified: NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/SqlGenerator.cs =================================================================== --- NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/SqlGenerator.cs 2008-03-30 11:41:40 UTC (rev 545) +++ NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/SqlGenerator.cs 2008-03-31 21:45:27 UTC (rev 546) @@ -25,10 +25,8 @@ using System.Collections.Generic; using System.Diagnostics; using System.Globalization; -using System.IO; using System.Text; using System.Data.Common; -using System.Data.SqlClient; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees; Modified: NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/StoreSchemaDefinition.ssdl =================================================================== --- NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/StoreSchemaDefinition.ssdl 2008-03-30 11:41:40 UTC (rev 545) +++ NETProvider/trunk/NETProvider/source/FirebirdSql/Data/Entity/StoreSchemaDefinition.ssdl 2008-03-31 21:45:27 UTC (rev 546) @@ -38,7 +38,7 @@ END) as "TypeName" , f.rdb$character_length as "MaxLength" , f.rdb$field_precision as "Precision" - , f.rdb$field_scale as "Scale" + , f.rdb$field_scale * (-1) as "Scale" , 0 as "IsIdentity" , CASE WHEN f.rdb$computed_blr IS NULL THEN 0 ELSE 1 END as "IsComputed" , 0 as "IsStoreGenerated" @@ -73,7 +73,7 @@ END) as "TypeName" , f.rdb$character_length as "MaxLength" , f.rdb$field_precision as "Precision" - , f.rdb$field_scale as "Scale" + , f.rdb$field_scale * (-1) as "Scale" , 0 as "IsIdentity" , CASE WHEN f.rdb$computed_blr IS NULL THEN 0 ELSE 1 END as "IsComputed" , 0 as "IsStoreGenerated" @@ -154,7 +154,7 @@ , 0 as "IsComposable" --??? , 0 as "IsAggregate" , 0 as "IsBuiltIn" - , 0 as "IsNiladic" --nullable??? + , 0 as "IsNiladic" --without params FROM rdb$procedures </DefiningQuery> @@ -183,7 +183,7 @@ END as "TypeName" , f.rdb$character_length as "MaxLength" , f.rdb$field_precision as "Precision" - , f.rdb$field_scale as "Scale" + , f.rdb$field_scale * (-1) as "Scale" , 'IN' as "Mode" FROM rdb$procedure_parameters pp LEFT JOIN rdb$fields f ON (pp.rdb$field_source = f.rdb$field_name) Modified: NETProvider/trunk/NETProvider/source/FirebirdSql/Data/FirebirdClient/FbProviderManifest.cs =================================================================== --- NETProvider/trunk/NETProvider/source/FirebirdSql/Data/FirebirdClient/FbProviderManifest.cs 2008-03-30 11:41:40 UTC (rev 545) +++ NETProvider/trunk/NETProvider/source/FirebirdSql/Data/FirebirdClient/FbProviderManifest.cs 2008-03-31 21:45:27 UTC (rev 546) @@ -84,7 +84,7 @@ { Debug.Assert(!string.IsNullOrEmpty(versionHint), "versionHint should not be null/empty"); -#warning Finish this for real +#warning Token - Finish this for real //if (versionHint.StartsWith("", StringComparison.Ordinal)) if (true) { @@ -101,7 +101,7 @@ { get { -#warning Finish this for real +#warning Token - Finish this for real return "FB"; return _serverVersion; } @@ -195,11 +195,9 @@ switch (storeTypeName) { // for some types we just go with simple type usage with no facets - //case "tinyint": case "smallint": case "bigint": case "smallint_bool": - //case "uniqueidentifier": case "int": return TypeUsage.CreateDefaultTypeUsage(edmPrimitiveType); @@ -209,80 +207,32 @@ isUnicode = true; //TODO: hardcoded isFixedLen = false; break; - case "varchar_max": newPrimitiveTypeKind = PrimitiveTypeKind.String; isUnbounded = true; isUnicode = true; //TODO: hardcoded isFixedLen = false; break; - case "char": newPrimitiveTypeKind = PrimitiveTypeKind.String; isUnbounded = !TypeHelpers.TryGetMaxLength(storeType, out maxLength); - isUnicode = false; + isUnicode = true; //TODO: hardcoded isFixedLen = true; break; - //case "nvarchar": - // newPrimitiveTypeKind = PrimitiveTypeKind.String; - // isUnbounded = !TypeHelpers.TryGetMaxLength(storeType, out maxLength); - // isUnicode = true; - // isFixedLen = false; - // break; - - //case "nchar": - // newPrimitiveTypeKind = PrimitiveTypeKind.String; - // isUnbounded = !TypeHelpers.TryGetMaxLength(storeType, out maxLength); - // isUnicode = true; - // isFixedLen = true; - // break; - - ... [truncated message content] |