/// <summary> /// Gets the table count. /// </summary> /// <param name="countTableSql">The count table sql.</param> /// <returns>An ISqlResult.</returns> protected virtual ISqlResult BuildTableCount(CountTableSql countTableSql) { var r = new ParmsSqlResult(); r.SQL = $"SELECT count(1) FROM information_schema.TABLES WHERE table_name ='{countTableSql.TableName}'"; return(r); }
/// <summary> /// Builds the sql result. /// </summary> /// <param name="sql">The sql.</param> /// <returns>An ISqlResult.</returns> public ISqlResult BuildSqlResult(ISql sql) { return(sql switch { IQuery query => BuildQuery(query), IfSql ifSql => BuilderIfSql(ifSql), StringSql stringSql => BuilderStringSql(stringSql), ExistSql existSql => BuilderExist(existSql), CountDatabaseSql countDatabaseSql => BuildCountForDatabase(countDatabaseSql), DeleteDatabaseSql deleteDatabaseSql => BuildDeleteDatabase(deleteDatabaseSql), AllTableNamesSql allTableNamesSql => BuildAllTableName(allTableNamesSql), CreateDatabaseSql createDatabaseSql => BuildCreateDatabase(createDatabaseSql), AllDatabaseSql allDatabaseSql => BuildAllDatabase(allDatabaseSql), CreateTableSql createTableSql => BuildCreateTable(createTableSql), CountTableSql countTableSql => BuildTableCount(countTableSql), UpdateTableNameSql updateTableNameSql => BuildUpdateTableName(updateTableNameSql), DeleteTableSql deleteTableSql => BuildDeleteTable(deleteTableSql), ColumsNamesSql columsNamesSql => BuildColumnNames(columsNamesSql), CountColumsSql countColumsSql => BuildColumnsCount(countColumsSql), RenameColumnSql renameColumnSql => BuildRenameColumnsName(renameColumnSql), UpdateColumnsSql updateColumnsSql => BuildUpdateColumns(updateColumnsSql), AddColumnsSql addColumnsSql => BuildAddColumns(addColumnsSql), DeleteColumsSql deleteColumsSql => BuildDeleteColumn(deleteColumsSql), CreateIndexSql createIndexSql => BuildCreateIndex(createIndexSql), DeleteIndexSql deleteIndexSql => BuildDeleteIndex(deleteIndexSql), CountIndexSql countIndexSql => BuildIndexCount(countIndexSql), RenameIndexSql renameIndexSql => RenameIndexSql(renameIndexSql), DeleteSql deleteSql => BuildDeleteSql(deleteSql), InsertSql insertSql => BuildInsertSql(insertSql), UpdateSql updateSql => BuildUpdateSql(updateSql), _ => new ParmsSqlResult() });