/// <summary> /// Get MySQL script to count the records in a table /// </summary> /// <param name="recordCount"></param> /// <returns></returns> protected override string GetRecordCountScript(RecordCountRule recordCount) { var countQuery = new Query(recordCount.TableName).AsCount(); var query = new Query(recordCount.TableName).Select("*").WhereRaw($"({_mySqlCompiler.Compile(countQuery)}) {recordCount.Operator} {recordCount.Count}"); var result = _mySqlCompiler.Compile(query); return($"SELECT EXISTS ({result});"); }
/// <summary> /// Get SQLServer script to count the records in a table /// </summary> /// <param name="recordCount"></param> /// <returns></returns> protected override string GetRecordCountScript(RecordCountRule recordCount) { var countQuery = new Query(recordCount.TableName).AsCount(); var query = new Query(recordCount.TableName).Select("*") .WhereRaw($"({_sqlServerCompiler.Compile(countQuery)}) {recordCount.Operator} {recordCount.Count}"); var result = _sqlServerCompiler.Compile(query); return($"IF EXISTS ({result}) BEGIN Select 1 END ELSE BEGIN Select 0 END;"); }
/// <summary> /// Get script to count the records in a table /// </summary> /// <param name="recordCount"></param> /// <returns></returns> protected abstract string GetRecordCountScript(RecordCountRule recordCount);