/**
* The class for building and returning a Postgresql ALTER DOMAIN query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alterdomain.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER EVENT TRIGGER query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-altereventtrigger.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alterextension.html
*/
class c_database_alter_extension extends c_database_query {
require_once('common/database/traits/database_set_schema.php');
/**
- * The class for building and returning a Postgresql ALTER COALATION query string.
+ * The class for building and returning a Postgresql ALTER FUNCTION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
- * @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
+ * @see: https://www.postgresql.org/docs/current/static/sql-alterfunction.html
*/
class c_database_alter_coalation extends c_database_query {
use t_database_argument_type;
<?php
/**
* @file
- * Provides a class for specific Postgesql query: ALTER COALATION.
+ * Provides a class for specific Postgesql query: ALTER GROUP.
*/
namespace n_koopa;
require_once('common/database/classes/database_query.php');
+require_once('common/database/traits/database_add_user.php');
+require_once('common/database/traits/database_role_specification.php');
/**
- * The class for building and returning a Postgresql ALTER COALATION query string.
+ * The class for building and returning a Postgresql ALTER GROUP query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
- * @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
+ * @see: https://www.postgresql.org/docs/current/static/sql-altergroup.html
*/
class c_database_alter_coalation extends c_database_query {
- protected const p_QUERY_COMMAND = 'alter coalation';
+ use t_database_add_user;
+ use t_database_role_specification;
+
+ protected const p_QUERY_COMMAND = 'alter group';
/**
*/
public function __construct() {
parent::__construct();
+
+ $this->add_user = NULL;
+ $this->role_specification = NULL;
}
/**
* Class destructor.
*/
public function __destruct() {
+ unset($this->add_user);
+ unset($this->role_specification);
+
parent::__destruct();
}
* Implements do_build().
*/
public function do_build() {
- $this->value = NULL;
+ if (!is_string($this->name)) {
+ return new c_base_return_false();
+ }
+
+ if ((is_int($this->role_specification) || is_string($this->role_specification)) && is_array($this->add_user)) {
+ $value = $this->p_do_build_role_specification();
+ $value = ' ' . $this->p_do_build_add_user();
+ }
+ else {
+ return new c_base_return_false();
+ }
- // @todo
+ $this->value = static::p_QUERY_COMMAND;
+ $this->value .= ' ' . $value;
+ unset($value);
return new c_base_return_true();
}
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
public const ALLOW_CONNECTIONS = 'allow_connections';
public const AS = 'as';
public const ASCEND = 'asc';
+ public const CALLED_ON_NULL_INPUT = 'called on null input';
public const CASCADE = 'cascade';
public const CAST = 'cast';
public const COLLATION = 'collation';
public const CONNECTION_LIMIT = 'connection limit';
public const CONVERSION = 'conversion';
+ public const COST = 'cost';
public const CREATE = 'create';
+ public const DEFAULT = 'default';
public const DELETE = 'delete';
public const DEPENDS_ON_EXTENSION = 'depends on extension';
public const DESCEND = 'desc';
public const ENABLE_TRIGGER = 'enable trigger';
public const EVENT_TRIGGER = 'event trigger';
public const EXECUTE = 'execute';
+ public const EXTERNAL = 'external';
public const FALSE = 'false';
public const FOREIGN_DATA_WRAPPER = 'foreign data wrapper';
public const FOREIGN_TABLE = 'foreign table';
public const GROUP_BY = 'group by';
public const HANDLER = 'handler';
public const IF_EXISTS = 'if exists';
+ public const IMMUTABLE = 'immutable';
public const IN = 'in';
public const INOUT = 'inout';
public const IN_SCHEMA = 'in schema';
public const INSERT = 'insert';
public const IS_TEMPLATE = 'is_template';
public const LANGUAGE = 'language';
+ public const LEAKPROOF = 'leakproof';
public const MATERIALIZED_VIEW = 'materialized view';
public const NO_HANDLER = 'no handler';
public const NO_INHERIT = 'no inherit';
public const NO_VALIDATOR = 'no validator';
+ public const NOT_LEAKPROOF = 'not leakproof';
public const NOT_NULL = 'not null';
public const NOT_VALID = 'not valid';
public const ON_FUNCTIONS = 'on functons';
public const ORDER_BY = 'order by';
public const OUT = 'out';
public const OWNER_TO = 'owner to';
+ public const PARALLEL = 'parallel';
public const PROCEDURAL = 'procedural';
public const PUBLIC = 'public';
public const REFERENCES = 'references';
public const RESET = 'reset';
public const RESET_ALL = 'reset all';
public const RESTRICT = 'restrict';
+ public const RESTRICTED = 'restricted';
+ public const RETURNS_NULL_ON_NULL_INPUT = 'returns null on null input';
public const REVOKE = 'revoke';
public const ROLE = 'role';
+ public const ROWS = 'rows';
+ public const SAFE = 'safe';
public const SCHEMA = 'schema';
+ public const SECURITY_DEFINER = 'security definer';
+ public const SECURITY_INVOKER = 'security invoker';
public const SELECT = 'select';
public const SEQUENCE = 'sequence';
public const SERVER = 'server';
public const SET_TABLESPACE = 'set tablespace';
public const SET_WITH_OIDS = 'set with oids';
public const SET_WITHOUT_OIDS = 'set without oids';
+ public const STABLE = 'stable';
+ public const STRICT = 'strict';
public const TABLE = 'table';
public const TEXT_SEARCH_CONFIGURATION = 'text search configuration';
public const TEXT_SEARCH_DICTIONARY = 'text search dictionary';
public const TRUNCATE = 'truncate';
public const TYPE = 'type';
public const TO = 'to';
+ public const UNSAFE = 'unsafe';
public const UPDATE = 'update';
public const USAGE = 'usage';
public const USER = 'user';
public const VALIDATOR = 'validator';
public const VALIDATE_CONSTRAINT = 'validate constraint';
public const VARIADIC = 'variadic';
+ public const VOLATILE = 'volatile';
public const VIEW = 'view';
public const WITH = 'with';
public const WITH_GRANT_OPTION = 'with grant option';
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
/**
* The class for building and returning a Postgresql ALTER COALATION query string.
*
- * When no argument mode is specified, then a wildcard * is auto-provided for the aggregate_signature parameter.
- *
* @see: https://www.postgresql.org/docs/current/static/sql-alteraggregate.html
*/
class c_database_alter_coalation extends c_database_query {
--- /dev/null
+<?php
+/**
+ * @file
+ * Provides traits for specific Postgesql Queries.
+ *
+ * These traits are associated with actions.
+ *
+ * @see: https://www.postgresql.org/docs/current/static/sql-commands.html
+ */
+namespace n_koopa;
+
+require_once('common/base/classes/base_error.php');
+require_once('common/base/classes/base_return.php');
+
+require_once('common/database/classes/database_string.php');
+
+require_once('common/database/enumerations/database_user.php');
+
+/**
+ * Provide the sql ADD USER / DROP USER functionality.
+ */
+trait t_database_add_user {
+ protected $add_user;
+
+ /**
+ * Set the add user or drop user.
+ *
+ * @param string|int|bool|null $role_type
+ * The user name (role name) to use.
+ * Set to TRUE to toggle to ADD USER (default).
+ * Set to FALSE to toggle to DROP USER.
+ * SET TO e_database_user::CURRENT or SET TO e_database_user::SESSION for reserved names.
+ * Set to NULL to disable.
+ * When NULL, this will remove all values.
+ *
+ * @return c_base_return_status
+ * TRUE on success, FALSE otherwise.
+ * FALSE with error bit set is returned on error.
+ */
+ public function set_add_user($name) {
+ if (is_null($name)) {
+ $this->add_user = NULL;
+ return new c_base_return_true();
+ }
+
+ if (!is_bool($name) && !is_string($name) && $name !== e_database_user::CURRENT && $name !== e_database_user::SESSION) {
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{argument_name}' => 'name', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_ARGUMENT);
+ return c_base_return_error::s_false($error);
+ }
+
+ if (!is_array($this->add_user)) {
+ $this->add_user = [
+ 'type' => TRUE,
+ 'names' => [],
+ ];
+ }
+
+ if (is_bool($name)) {
+ $this->add_user['type'] = $name;
+ }
+ else {
+ $this->add_user['names'][] = $name;
+ }
+
+ return new c_base_return_true();
+ }
+
+ /**
+ * Get the add/drop user settings.
+ *
+ * @return c_base_return_array|c_base_return_null
+ * An array of add/drop user settings on success.
+ * NULL is returned if not set (add/drop user is not to be used).
+ * NULL with the error bit set is returned on error.
+ */
+ public function get_add_user() {
+ if (is_null($this->add_user)) {
+ return new c_base_return_null();
+ }
+
+ if (is_array($this->add_use)) {
+ return c_base_return_array::s_new($this->add_user);
+ }
+
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'add_user', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ return c_base_return_error::s_null($error);
+ }
+
+ /**
+ * Perform the common build process for this trait.
+ *
+ * As an internal trait method, the caller is expected to perform any appropriate validation.
+ *
+ * @return string|null
+ * A string is returned on success.
+ * NULL is returned if there is nothing to process or there is an error.
+ */
+ protected function p_do_build_add_user() {
+ if (is_null($this->add_user)) {
+ return NULL;
+ }
+
+ $values = [];
+ foreach ($this->add_user['names'] as $name) {
+ if ($name === e_database_user::CURRENT) {
+ $values[] = c_database_string::CURRENT;
+ }
+ else if ($name === e_database_user::SESSION) {
+ $values[] = c_database_string::SESSION;
+ }
+ else if (is_string($name)) {
+ $values[] = $name;
+ }
+ }
+
+ $value = $this->add_user['type'] ? c_database_string::ADD : c_database_string::DROP;
+ $value .= ' ' . c_database_string::USER;
+ $value .= ' ' . implode(', ', $values);
+ return $value;
+ }
+}
}
/**
- * Get the currently assigned name.
+ * Get the currently assigned constraint settings.
*
- * @return c_base_return_string|c_base_return_null
- * A name on success.
+ * @return c_base_return_array|c_base_return_null
+ * An array of constraint settings on success.
* NULL is returned if not set (constraint is not to be used).
* NULL with the error bit set is returned on error.
*/
- public function get_constraint_name() {
+ public function get_constraint() {
if (is_null($this->constraint)) {
return new c_base_return_null();
}
- if (is_string($this->constraint['name'])) {
- return c_base_return_string::s_new($this->constraint['name']);
+ if (is_array($this->constraint)) {
+ return c_base_return_array::s_new($this->constraint);
}
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'constraint[name]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned type.
- *
- * @return c_base_return_int|c_base_return_null
- * A type code on success.
- * NULL is returned if not set (constraint is not to be used).
- * NULL with the error bit set is returned on error.
- */
- public function get_constraint_type() {
- if (is_null($this->constraint)) {
- return new c_base_return_null();
- }
-
- if (is_int($this->constraint['type'])) {
- return c_base_return_int::s_new($this->constraint['type']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'constraint[type]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned exists or invalid setting.
- *
- * @return c_base_return_bool|c_base_return_null
- * A boolean on success.
- * NULL is returned if not set (constraint is not to be used).
- * NULL with the error bit set is returned on error.
- */
- public function get_constraint_exists_or_invalid() {
- if (is_null($this->constraint) || is_null($this->constraint['exists_or_invalid'])) {
- return new c_base_return_null();
- }
-
- if (is_bool($this->constraint['exists_or_invalid'])) {
- return c_base_return_bool::s_new($this->constraint['exists_or_invalid']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'constraint[exists_or_invalid]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned cascade setting.
- *
- * @return c_base_return_int|c_base_return_null
- * A cascade code on success.
- * NULL is returned if not set (constraint is not to be used).
- * NULL with the error bit set is returned on error.
- */
- public function get_constraint_cascade() {
- if (is_null($this->constraint) || is_null($this->constraint['cascade'])) {
- return new c_base_return_null();
- }
-
- if (is_int($this->constraint['cascade'])) {
- return c_base_return_bool::s_new($this->constraint['cascade']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'constraint[cascade]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'constraint', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
return c_base_return_error::s_null($error);
}
}
/**
- * Get the currently assigned ENABLE or DISABLE status.
+ * Get the currently assigned enable trigger settings.
*
- * @return c_base_return_bool|c_base_return_null
- * TRUE for ENABLE TRIGGER or FALSE for DISABLE TRIGGER on success.
+ * @return c_base_return_array|c_base_return_null
+ * An array containing the enable trigger settings on success.
* NULL is returned if not set (not to be confused with DISABLE TRIGGER).
* NULL with the error bit set is returned on error.
*/
- public function get_enable_trigger_status() {
+ public function get_enable_trigger() {
if (is_null($this->enable_trigger)) {
return new c_base_return_null();
}
- if (is_bool($this->enable_trigger['status'])) {
- return c_base_return_bool::s_new($this->enable_trigger['status']);
+ if (is_array($this->enable_trigger)) {
+ return c_base_return_array::s_new($this->enable_trigger);
}
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'enable_trigger[status]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned ENABLE or DISABLE type.
- *
- * @return c_base_return_int|c_base_return_null
- * An integer representing the type code on success.
- * NULL is returned if not set.
- * NULL with the error bit set is returned on error.
- */
- public function get_enable_trigger_type() {
- if (is_null($this->enable_trigger)) {
- return new c_base_return_null();
- }
-
- if (is_int($this->enable_trigger['type'])) {
- return c_base_return_int::s_new($this->enable_trigger['type']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'enable_trigger[type]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned ENABLE or DISABLE name.
- *
- * @return c_base_return_string|c_base_return_null
- * An integer representing the type code on success.
- * NULL is returned if not set.
- * NULL with the error bit set is returned on error.
- */
- public function get_enable_trigger_name() {
- if (is_null($this->enable_trigger) || is_null($this->enable_trigger['name'])) {
- return new c_base_return_null();
- }
-
- if (is_int($this->enable_trigger['name'])) {
- return c_base_return_int::s_new($this->enable_trigger['name']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'enable_trigger[name]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'enable_trigger', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
return c_base_return_error::s_null($error);
}
return new c_base_return_true();
}
- switch($function_action) {
+ switch ($function_action) {
case e_database_function_action::CALLED_ON_NULL_INPUT:
case e_database_function_action::COST:
case e_database_function_action::IMMUTABLE:
return NULL;
}
- // @todo
+ $values = [];
+ foreach ($this->function_action as $function_action) {
+ if ($function_action['type'] === e_database_function_action::CALLED_ON_NULL_INPUT) {
+ $values[] = c_database_string::CALLED_ON_NULL_INPUT;
+ }
+ else if ($function_action['type'] === e_database_function_action::COST) {
+ $values[] = c_database_string::COST . ' ' . $function_action['parameter_1'];
+ }
+ else if ($function_action['type'] === e_database_function_action::IMMUTABLE) {
+ $values[] = c_database_string::IMMUTABLE;
+ }
+ else if ($function_action['type'] === e_database_function_action::LEAKPROOF) {
+ $values[] = c_database_string::LEAKPROOF;
+ }
+ else if ($function_action['type'] === e_database_function_action::NOT_LEAKPROOF) {
+ $values[] = c_database_string::NOT_LEAKPROOF;
+ }
+ else if ($function_action['type'] === e_database_function_action::PARALLEL_RESTRICTED) {
+ $values[] = c_database_string::PARALLEL_RESTRICTED;
+ }
+ else if ($function_action['type'] === e_database_function_action::PARALLEL_SAFE) {
+ $values[] = c_database_string::PARALLEL_SAFE;
+ }
+ else if ($function_action['type'] === e_database_function_action::PARALLEL_UNSAFE) {
+ $values[] = c_database_string::PARALLEL_UNSAFE;
+ }
+ else if ($function_action['type'] === e_database_function_action::RESET) {
+ $values[] = c_database_string::RESET;
+ }
+ else if ($function_action['type'] === e_database_function_action::RESET_ALL) {
+ $values[] = c_database_string::RESET_ALL;
+ }
+ else if ($function_action['type'] === e_database_function_action::RETURNS_NULL_ON_NULL_INPUT) {
+ $values[] = c_database_string::RETURNS_NULL_ON_NULL_INPUT;
+ }
+ else if ($function_action['type'] === e_database_function_action::ROWS) {
+ $values[] = c_database_string::ROWS . ' ' . $function_action['parameter_1'];
+ }
+ else if ($function_action['type'] === e_database_function_action::SECURITY_DEFINER) {
+ $values[] = c_database_string::SECURITY_DEFINER;
+ }
+ else if ($function_action['type'] === e_database_function_action::SECURITY_INVOKER) {
+ $values[] = c_database_string::SECURITY_INVOKER;
+ }
+ else if ($function_action['type'] === e_database_function_action::SET_EQUAL) {
+ $value = is_null($function_action['parameter_2']) ? c_database_string::DEFAULT : $function_action['parameter_2'];
+ $values[] = c_database_string::SET . ' ' . $function_action['parameter_1'] . ' = ' . $value;
+ unset($value);
+ }
+ else if ($function_action['type'] === e_database_function_action::SET_FROM) {
+ $values[] = c_database_string::SET . ' ' . $function_action['parameter_1'] . ' ' . c_database_string::FROM_CURRENT;
+ unset($value);
+ }
+ else if ($function_action['type'] === e_database_function_action::SET_TO) {
+ $value = is_null($function_action['parameter_2']) ? c_database_string::DEFAULT : $function_action['parameter_2'];
+ $values[] = c_database_string::SET . ' ' . $function_action['parameter_1'] . ' ' . c_database_string::TO . ' ' . $value;
+ unset($value);
+ }
+ else if ($function_action['type'] === e_database_function_action::STABLE) {
+ $values[] = c_database_string::STABLE;
+ }
+ else if ($function_action['type'] === e_database_function_action::STRICT) {
+ $values[] = c_database_string::STRICT;
+ }
+ else if ($function_action['type'] === e_database_function_action::VOLATILE) {
+ $values[] = c_database_string::VOLATILE;
+ }
+ }
+ unset($function_action);
+
+ return implode(', ', $values);
}
}
'name' => $name,
'inherit' => $inherit,
];
+
return new c_base_return_true();
}
/**
- * Get the currently assigned inherit status.
+ * Get the currently assigned inherit settings.
*
- * @return c_base_return_bool|c_base_return_null
- * TRUE for INHERIT or FALSE for NO INHERIT on success.
+ * @return c_base_return_array|c_base_return_null
+ * An array containing the inherit settings on success.
* NULL is returned if not set.
* NULL with the error bit set is returned on error.
*/
return new c_base_return_null();
}
- if (is_bool($this->inherit['inherit'])) {
- return c_base_return_bool::s_new($this->inherit['inherit']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'inherit[inherit]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned name to inherit from.
- *
- * @return c_base_return_string|c_base_return_null
- * A name on success.
- * NULL is returned if not set.
- * NULL with the error bit set is returned on error.
- */
- public function get_inherit_name() {
- if (is_null($this->inherit)) {
- return new c_base_return_null();
- }
-
- if (is_string($this->inherit['name'])) {
- return c_base_return_string::s_new($this->inherit['name']);
+ if (is_array($this->inherit)) {
+ return c_base_return_array::s_new($this->inherit);
}
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'inherit[name]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'inherit', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
return c_base_return_error::s_null($error);
}
}
/**
- * Get the currently assigned sql owner to.
+ * Get the currently assigned owner to settings.
*
- * @return c_base_return_int|c_base_return_null
- * A (e_database_user) code representing the owner on success.
+ * @return c_base_return_array|c_base_return_null
+ * An array containing the owner to settings on success.
* NULL without error bit set is returned if not assigned.
* NULL with the error bit set is returned on error.
*/
return new c_base_return_null();
}
- if (is_int($this->owner_to['type'])) {
- return c_base_return_int::s_new($this->owner_to['type']);
+ if (is_array($this->owner_to)) {
+ return c_base_return_array::s_new($this->owner_to);
}
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'owner_to[type]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned sql owner to specified name.
- *
- * @return c_base_return_string|c_base_return_null
- * An owner to name on success.
- * NULL without error bit set is returned if not assigned.
- * NULL with the error bit set is returned on error.
- */
- public function get_owner_to_user_name() {
- if (is_null($this->owner_to)) {
- return new c_base_return_null();
- }
-
- if (is_string($this->owner_to['value'])) {
- return c_base_return_string::s_new($this->owner_to['value']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'owner_to[value]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'owner_to', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
return c_base_return_error::s_null($error);
}
}
/**
- * Get the currently assigned name to rename from.
+ * Get the currently assigned rename from settings.
*
- * @return c_base_return_string|c_base_return_null
- * A name on success.
+ * @return c_base_return_array|c_base_return_null
+ * An array containing rename from settings on success.
* NULL is returned if not set.
* NULL with the error bit set is returned on error.
*/
- public function get_rename_column_from_name() {
+ public function get_rename_column() {
if (is_null($this->rename_column)) {
return new c_base_return_null();
}
- if (is_string($this->rename_column['from'])) {
- return c_base_return_string::s_new($this->rename_column['from']);
+ if (is_array($this->rename_column)) {
+ return c_base_return_array::s_new($this->rename_column['from']);
}
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'rename_column[from]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned name to rename to.
- *
- * @return c_base_return_string|c_base_return_null
- * A name on success.
- * NULL is returned if not set.
- * NULL with the error bit set is returned on error.
- */
- public function get_rename_column_to_name() {
- if (is_null($this->rename_column)) {
- return new c_base_return_null();
- }
-
- if (is_string($this->rename_column['to'])) {
- return c_base_return_string::s_new($this->rename_column['to']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'rename_column[to]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'rename_column', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
return c_base_return_error::s_null($error);
}
}
/**
- * Get the currently assigned sql reset.
+ * Get the currently assigned reset settings.
*
- * @return c_base_return_int|c_base_return_null
- * A (c_database_reset) code representing the reset on success.
+ * @return c_base_return_array|c_base_return_null
+ * An array containing reset settings on success.
* NULL is returned if not set (reset tablespace is not to be used).
* NULL with the error bit set is returned on error.
*/
return new c_base_return_null();
}
- if (is_int($this->reset['type'])) {
- return c_base_return_int::s_new($this->reset['type']);
+ if (is_array($this->reset)) {
+ return c_base_return_array::s_new($this->reset);
}
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'reset[type]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned sql reset parameter value.
- *
- * @return c_base_return_string|c_base_return_null
- * A reset parameter value on success.
- * NULL without error bit reset is returned if not assigned.
- * NULL with the error bit reset is returned on error.
- */
- public function get_reset_parameter() {
- if (is_null($this->reset) || is_null($this->reset['value'])) {
- return new c_base_return_null();
- }
-
- if (is_string($this->reset['value'])) {
- return c_base_return_string::s_new($this->reset['value']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'reset[value]', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'reset', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
return c_base_return_error::s_null($error);
}
--- /dev/null
+<?php
+/**
+ * @file
+ * Provides traits for specific Postgesql Queries.
+ *
+ * These traits are associated with actions.
+ *
+ * @see: https://www.postgresql.org/docs/current/static/sql-commands.html
+ */
+namespace n_koopa;
+
+require_once('common/base/classes/base_error.php');
+require_once('common/base/classes/base_return.php');
+
+require_once('common/database/classes/database_string.php');
+
+require_once('common/database/enumerations/database_role.php');
+
+/**
+ * Provide the sql role specification functionality.
+ */
+trait t_database_role_specification {
+ protected $role_specification;
+
+ /**
+ * Set the role specification.
+ *
+ * @param int|string|null $name
+ * A string representing the role name to use.
+ * May be an integer of either e_database_role::CURRENT or e_database_role::SESSION.
+ * Set to NULL to disable.
+ * When NULL, this will remove all values.
+ *
+ * @return c_base_return_status
+ * TRUE on success, FALSE otherwise.
+ * FALSE with error bit set is returned on error.
+ */
+ public function set_role_specification($name) {
+ if (is_null($name)) {
+ $this->role_specification = NULL;
+ return new c_base_return_true();
+ }
+
+ if (!is_string($name) && $name !== e_database_role::CURRENT && $name !== e_database_role::SESSION) {
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{argument_name}' => 'name', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_ARGUMENT);
+ return c_base_return_error::s_false($error);
+ }
+
+ $this->role_specification = $name;
+ return new c_base_return_true();
+ }
+
+ /**
+ * Get the role specification.
+ *
+ * @return c_base_return_int|c_base_return_string|c_base_return_null
+ * A role name string or an integer representing either e_database_role::CURRENT or e_database_role::SESSION on success.
+ * NULL is returned if not set.
+ * NULL with the error bit set is returned on error.
+ */
+ public function get_role_specification($index = NULL) {
+ if (is_null($this->role_specification)) {
+ return new c_base_return_null();
+ }
+
+ if (is_string($this->role_specification)) {
+ return c_base_return_array::s_new($this->role_specification);
+ }
+ else if ($this->role_specification === e_database_role::CURRENT || $this->role_specification === e_database_role::SESSION) {
+ return c_base_return_int::s_new($this->role_specification);
+ }
+
+ $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'role_specification', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
+ return c_base_return_error::s_null($error);
+ }
+
+ /**
+ * Perform the common build process for this trait.
+ *
+ * As an internal trait method, the caller is expected to perform any appropriate validation.
+ *
+ * @return string|null
+ * A string is returned on success.
+ * NULL is returned if there is nothing to process or there is an error.
+ */
+ protected function p_do_build_role_specification() {
+ if (is_null($this->role_specification)) {
+ return NULL;
+ }
+
+ $value = NULL;
+ if (is_string($this->role_specification)) {
+ $value = $this->role_specification;
+ }
+ else if ($this->role_specification === e_database_role::CURRENT) {
+ $value = c_database_string::CURRENT;
+ }
+ else if ($this->role_specification === e_database_role::SESSION) {
+ $value = c_database_string::SESSION;
+ }
+
+ return $value;
+ }
+}
}
/**
- * Get the currently assigned sql set.
+ * Get the currently assigned set settings.
*
- * @return c_base_return_int|c_base_return_null
- * A (c_database_set) code representing the set on success.
+ * @return c_base_return_array|c_base_return_null
+ * An array containing set settings on success.
* NULL is returned if not set (set tablespace is not to be used).
* NULL with the error bit set is returned on error.
*/
return new c_base_return_null();
}
- if (is_int($this->set['type'])) {
- return c_base_return_int::s_new($this->set['type']);
+ if (is_array($this->set)) {
+ return c_base_return_array::s_new($this->set);
}
$error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'set', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
}
/**
- * Get the currently assigned sql set parameter value.
- *
- * @return c_base_return_string|c_base_return_null
- * A set parameter value on success.
- * NULL without error bit set is returned if not assigned.
- * NULL with the error bit set is returned on error.
- */
- public function get_set_parameter() {
- if (is_null($this->set) || is_null($this->set['parameter'])) {
- return new c_base_return_null();
- }
-
- if (is_string($this->set['parameter'])) {
- return c_base_return_string::s_new($this->set['parameter']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'set_parameter', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
- * Get the currently assigned sql set value value.
- *
- * @return c_base_return_string|c_base_return_null
- * A set value value on success.
- * NULL without error bit set is returned if not assigned.
- * NULL with the error bit set is returned on error.
- */
- public function get_set_value() {
- if (is_null($this->set) || is_null($this->set['value'])) {
- return new c_base_return_null();
- }
-
- if (is_string($this->set['value'])) {
- return c_base_return_string::s_new($this->set['value']);
- }
-
- $error = c_base_error::s_log(NULL, ['arguments' => [':{variable_name}' => 'set_value', ':{function_name}' => __CLASS__ . '->' . __FUNCTION__]], i_base_error_messages::INVALID_VARIABLE);
- return c_base_return_error::s_null($error);
- }
-
- /**
* Perform the common build process for this trait.
*
* As an internal trait method, the caller is expected to perform any appropriate validation.