All Downloads are FREE. Search and download functionalities are using the official Maven repository.

db.sql.api.cmd.executor.IDelete Maven / Gradle / Ivy

There is a newer version: 1.7.6-RC2
Show newest version
package db.sql.api.cmd.executor;

import db.sql.api.Cmd;
import db.sql.api.cmd.JoinMode;
import db.sql.api.cmd.basic.IDataset;
import db.sql.api.cmd.basic.IDatasetField;
import db.sql.api.cmd.basic.ITable;
import db.sql.api.cmd.basic.ITableField;
import db.sql.api.cmd.executor.method.IDeleteMethod;
import db.sql.api.cmd.executor.method.IFromMethod;
import db.sql.api.cmd.executor.method.IJoinMethod;
import db.sql.api.cmd.executor.method.IWhereMethod;
import db.sql.api.cmd.struct.IFrom;
import db.sql.api.cmd.struct.IJoin;
import db.sql.api.cmd.struct.IOn;
import db.sql.api.cmd.struct.IWhere;
import db.sql.api.cmd.struct.conditionChain.IConditionChain;
import db.sql.api.cmd.struct.delete.IDeleteTable;

public interface IDelete,
        TABLE_FIELD extends ITableField,
        COLUMN extends Cmd,
        V,
        CONDITION_CHAIN extends IConditionChain,
        DELETE_TABLE extends IDeleteTable,
        FROM extends IFrom,
        JOIN extends IJoin,
        ON extends IOn,
        WHERE extends IWhere>

        extends IDeleteMethod,
        IFromMethod,
        IJoinMethod,
        IWhereMethod,
        IExecutor {

    DELETE_TABLE $delete(IDataset... tables);

    FROM $from(IDataset... tables);

    JOIN $join(JoinMode mode, IDataset mainTable, IDataset secondTable);

    WHERE $where();

    @Override
    default , DATASET_FIELD extends IDatasetField> SELF delete(IDataset... tables) {
        $delete(tables);
        return (SELF) this;
    }

    @Override
    default , DATASET_FIELD extends IDatasetField> SELF from(IDataset... tables) {
        $from(tables);
        return (SELF) this;
    }

    @Override
    default CONDITION_CHAIN conditionChain() {
        return $where().conditionChain();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy