Skip to content
Snippets Groups Projects
CreatesSqlQueries.php 798 B
Newer Older
Josh Pollock's avatar
Josh Pollock committed
<?php


namespace calderawp\CalderaFormsQuery;

Josh Pollock's avatar
Josh Pollock committed
/**
 * Interface CreatesSqlQueries
 *
 * Interface that all classes that create SQL queries MUST impliment
 */
interface CreatesSqlQueries
Josh Pollock's avatar
Josh Pollock committed
{

	/**
	 * Get name of table being queried
	 *
	 * @return string
	 */
	public function getTableName();

	/**
	 * Get usable SQL statement from query builder
	 *
	 * @return string
	 */
	public function getPreparedSql();

	/**
	 * Get query builder instance
	 *
	 * @return MySqlBuilder
	 */
	public function getBuilder();
Josh Pollock's avatar
Josh Pollock committed

	/**
	 * Reset the query builder
	 *
	 * @param MySqlBuilder|null $builder New builder or null to use default empty
	 * @return $this
	 */
Josh Pollock's avatar
Josh Pollock committed
	public function resetBuilder(MySqlBuilder $builder = null);

	/**
	 * Reset the query
	 *
	 * @return $this
	 */
	public function resetQuery();
Josh Pollock's avatar
Josh Pollock committed
}