/// <summary> /// 获取当前函数对象 /// </summary> /// <returns></returns> internal static SqlFunBase GetSqlFun() { SqlFunBase sqlFun; switch (MDbType) { case DbHelper.DbTypeEnum.Mysql: sqlFun = new SqlFunBase(); break; case DbHelper.DbTypeEnum.Sqlite: sqlFun = new SqLiteFunction(); break; case DbHelper.DbTypeEnum.Mssql: sqlFun = new MsSqlFunction(); break; case DbHelper.DbTypeEnum.Oracle: sqlFun = new OracleFunction(); break; case DbHelper.DbTypeEnum.None: sqlFun = new SqlFunBase(); break; default: sqlFun = new SqlFunBase(); break; } return(sqlFun); }
public override QsiColumnNode VisitColumn(Column column) { var columnNode = base.VisitColumn(column); if (columnNode is QsiDeclaredColumnNode declaredColumn && declaredColumn.Name.Level == 1 && !declaredColumn.Name[0].IsEscaped && OracleFunction.Contains(declaredColumn.Name[0].Value)) { return(TreeHelper.Create <QsiDerivedColumnNode>(cn => { cn.Expression.SetValue(TreeHelper.Create <QsiInvokeExpressionNode>(n => { n.Member.SetValue(new QsiFunctionExpressionNode { Identifier = declaredColumn.Name }); })); cn.Alias.SetValue(new QsiAliasNode { Name = declaredColumn.Name[0] }); })); } return(columnNode); }
/// <summary> /// 获取当前函数对象 /// </summary> /// <returns></returns> public static SqlFunBase GetSqlFun(ORM.DbTypeEnum mDbType = ORM.DbTypeEnum.None) { SqlFunBase sqlFun; switch (mDbType) { case ORM.DbTypeEnum.Mysql: sqlFun = new SqlFunBase(); break; case ORM.DbTypeEnum.SqlIte: sqlFun = new SqLiteFunction(); break; case ORM.DbTypeEnum.Mssql: sqlFun = new MsSqlFunction(); break; case ORM.DbTypeEnum.Oracle: sqlFun = new OracleFunction(); break; case ORM.DbTypeEnum.None: sqlFun = new SqlFunBase(); break; default: sqlFun = new SqlFunBase(); break; } return(sqlFun); }
public Task <string> OracleQueryAsync(OracleFunction oracleFunction, BlockParameter blockParameter = null) { return(ContractHandler.QueryAsync <OracleFunction, string>(oracleFunction, blockParameter)); }