コード例 #1
0
        /// <inheritdoc/>
        public override string Translate(SqlCompilerContext context, SqlFunctionCall node,
                                         FunctionCallSection section, int position)
        {
            switch (section)
            {
            case FunctionCallSection.Entry:
                switch (node.FunctionType)
                {
                case SqlFunctionType.LastAutoGeneratedId:
                case SqlFunctionType.CurrentUser:
                case SqlFunctionType.SessionUser:
                case SqlFunctionType.SystemUser:
                case SqlFunctionType.User:
                case SqlFunctionType.CurrentDate:
                case SqlFunctionType.CurrentTimeStamp:
                    return(Translate(node.FunctionType));
                }
                break;

            case FunctionCallSection.ArgumentEntry:
                return(string.Empty);

            case FunctionCallSection.ArgumentDelimiter:
                return(ArgumentDelimiter);
            }

            return(base.Translate(context, node, section, position));
        }
コード例 #2
0
        /// <inheritdoc/>
        public override string Translate(SqlCompilerContext context, SqlFunctionCall node, FunctionCallSection section, int position)
        {
            if (node.FunctionType == SqlFunctionType.LastAutoGeneratedId)
            {
                if (section == FunctionCallSection.Entry)
                {
                    return(Translate(node.FunctionType));
                }
                if (section == FunctionCallSection.Exit)
                {
                    return(string.Empty);
                }
            }
            switch (section)
            {
            case FunctionCallSection.ArgumentEntry:
                return(string.Empty);

            case FunctionCallSection.ArgumentDelimiter:
                return(ArgumentDelimiter);

            default:
                return(base.Translate(context, node, section, position));
            }
        }
コード例 #3
0
        public override string Translate(SqlCompilerContext context, SqlFunctionCall node, FunctionCallSection section, int position)
        {
            switch (section)
            {
            case FunctionCallSection.ArgumentEntry:
                return(string.Empty);

            case FunctionCallSection.ArgumentDelimiter:
                return(ArgumentDelimiter);

            default:
                return(base.Translate(context, node, section, position));
            }
        }
コード例 #4
0
        public override string Translate(SqlCompilerContext context, SqlFunctionCall node, FunctionCallSection section, int position)
        {
            switch (section)
            {
            case FunctionCallSection.Entry:
                switch (node.FunctionType)
                {
                case SqlFunctionType.CurrentUser:
                case SqlFunctionType.SessionUser:
                case SqlFunctionType.SystemUser:
                case SqlFunctionType.User:
                case SqlFunctionType.CurrentDate:
                case SqlFunctionType.CurrentTimeStamp:
                    return(Translate(node.FunctionType));
                }
                break;
            }

            return(base.Translate(context, node, section, position));
        }