/lib/Constants.php
http://github.com/jv2222/ezSQL · PHP · 185 lines · 141 code · 21 blank · 23 comment · 2 complexity · 4f16f3bdcfff996e03343c547e8a4dc9 MD5 · raw file
- <?php
- if (!\defined('CONSTANTS')) {
- /**
- * ezsqlModel Constants
- */
- \defined('EZSQL_VERSION') or \define('EZSQL_VERSION', '5.1.2');
- \defined('OBJECT') or \define('OBJECT', 'OBJECT');
- \defined('ARRAY_A') or \define('ARRAY_A', 'ARRAY_A');
- \defined('ARRAY_N') or \define('ARRAY_N', 'ARRAY_N');
- // Use to set get_result output as json
- \define('JSON', 'json');
- // Error messages
- \define('MISSING_CONFIGURATION', '<b>Fatal Error:</b> Missing configuration details to connect to database');
- \define('CONFIGURATION_REQUIRES', '<b>Fatal Error:</b> This configuration requires ezsqlModel (ezsqlModel.php) to be included/loaded before it can be used');
- \define('FAILED_CONNECTION', 'Failed to make connection to database');
- // ezQuery prepare placeholder/positional tag
- \define('_TAG', '__ez__');
- /**
- * Operator boolean expressions.
- */
- \define('EQ', '=');
- \define('NEQ', '<>');
- \define('NE', '!=');
- \define('LT', '<');
- \define('LTE', '<=');
- \define('GT', '>');
- \define('GTE', '>=');
- \define('_BOOLEAN', ['<', '>', '=', '!=', '>=', '<=', '<>']);
- \define('_IN', 'IN');
- \define('_notIN', 'NOT IN');
- \define('_LIKE', 'LIKE');
- \define('_notLIKE', 'NOT LIKE');
- \define('_BETWEEN', 'BETWEEN');
- \define('_notBETWEEN', 'NOT BETWEEN');
- \define('_isNULL', 'IS NULL');
- \define('_notNULL', 'IS NOT NULL');
- \define('_BOOLEAN_OPERATORS', [
- '<', '>', '=', '!=', '>=', '<=', '<>',
- 'IN', 'LIKE', 'NOT LIKE', 'BETWEEN', 'NOT BETWEEN', 'IS', 'IS NOT'
- ]);
- /**
- * Combine operators.
- */
- \define('_AND', 'AND');
- \define('_OR', 'OR');
- \define('_NOT', 'NOT');
- \define('_andNOT', 'AND NOT');
- \define('_COMBINERS', ['AND', 'OR', 'NOT', 'AND NOT']);
- /*
- * for joining shortcut methods.
- */
- \define('_INNER', 'INNER');
- \define('_LEFT', 'LEFT');
- \define('_RIGHT', 'RIGHT');
- \define('_FULL', 'FULL');
- \define('_JOINERS', ['INNER', 'LEFT', 'RIGHT', 'FULL']);
- /**
- * Associative array of supported SQL Drivers, and library
- * @define(array)
- */
- \define('VENDOR', [
- 'mysql' => 'ezsql\Database\ez_mysqli',
- 'mysqli' => 'ezsql\Database\ez_mysqli',
- 'pdo' => 'ezsql\Database\ez_pdo',
- 'postgresql' => 'ezsql\Database\ez_pgsql',
- 'pgsql' => 'ezsql\Database\ez_pgsql',
- 'sqlite' => 'ezsql\Database\ez_sqlite3',
- 'sqlite3' => 'ezsql\Database\ez_sqlite3',
- 'sqlserver' => 'ezsql\Database\ez_sqlsrv',
- 'mssql' => 'ezsql\Database\ez_sqlsrv',
- 'sqlsrv' => 'ezsql\Database\ez_sqlsrv'
- ]);
- \define('MYSQL', 'mysqli');
- \define('MYSQLI', 'mysqli');
- \define('Pdo', 'pdo');
- \define('PGSQL', 'pgsql');
- \define('POSTGRESQL', 'pgsql');
- \define('SQLITE', 'sqlite3');
- \define('SQLITE3', 'sqlite3');
- \define('SQLSRV', 'sqlsrv');
- \define('SQLSERVER', 'sqlsrv');
- \define('MSSQL', 'sqlsrv');
- // String SQL data types
- \define('CHAR', 'CHAR');
- \define('VARCHAR', 'VARCHAR');
- \define('CHARACTER', 'CHARACTER');
- \define('TEXT', 'TEXT');
- \define('TINY', 'TINYTEXT');
- \define('TINYTEXT', 'TINYTEXT');
- \define('MEDIUM', 'MEDIUMTEXT');
- \define('MEDIUMTEXT', 'MEDIUMTEXT');
- \define('LONGTEXT', 'LONGTEXT');
- \define('BINARY', 'BINARY');
- \define('VARBINARY', 'VARBINARY');
- \define('NCHAR', 'NCHAR');
- \define('NVAR', 'NVARCHAR');
- \define('NVARCHAR', 'NVARCHAR');
- \define('NTEXT', 'NTEXT');
- \define('IMAGE', 'IMAGE');
- \define('CLOB', 'CLOB');
- // Numeric SQL data types
- \define('INTR', 'INT');
- \define('INT0', 'INT');
- \define('INT2', 'INT2');
- \define('INT4', 'INT4');
- \define('INT8', 'INT8');
- \define('NUMERIC', 'NUMERIC');
- \define('DECIMAL', 'DECIMAL');
- \define('BIT', 'BIT');
- \define('VARBIT', 'VARBIT');
- \define('INTEGERS', 'INTEGER');
- \define('TINYINT', 'TINYINT');
- \define('SMALLINT', 'SMALLINT');
- \define('MEDIUMINT', 'MEDIUMINT');
- \define('BIGINT', 'BIGINT');
- \define('DEC', 'DEC');
- \define('FIXED', 'FIXED');
- \define('FLOATS', 'FLOAT');
- \define('DOUBLES', 'DOUBLE');
- \define('REALS', 'REAL');
- \define('BOOLS', 'BOOL');
- \define('BOOLEANS', 'BOOLEAN');
- \define('SMALLMONEY', 'SMALLMONEY');
- \define('MONEY', 'MONEY');
- // Date/Time SQL data types
- \define('DATES', 'DATE');
- \define('TIMESTAMP', 'TIMESTAMP');
- \define('TIMES', 'TIME');
- \define('DATETIME', 'DATETIME');
- \define('YEAR', 'YEAR');
- \define('DATETIME2', 'DATETIME2');
- \define('SMALLDATETIME', 'SMALLDATETIME');
- \define('DATETIMEOFFSET', 'DATETIMEOFFSET');
- // Large Object SQL data types
- \define('TINYBLOB', 'TINYBLOB');
- \define('BLOB', 'BLOB');
- \define('MEDIUMBLOB', 'MEDIUMBLOB');
- \define('NULLS', 'NULL');
- \define('notNULL', 'NOT NULL');
- \define('CONSTRAINT', 'CONSTRAINT');
- \define('PRIMARY', 'PRIMARY KEY');
- \define('FOREIGN', 'FOREIGN KEY');
- \define('UNIQUE', 'UNIQUE');
- \define('INDEX', 'INDEX');
- \define('REFERENCES', 'REFERENCES');
- \define('AUTO', '__autoNumbers__');
- \define('SEQUENCE', '__autoNumbers__');
- \define('AUTO_INCREMENT', 'AUTO_INCREMENT');
- \define('AUTOINCREMENT', 'AUTOINCREMENT');
- \define('IDENTITY', 'IDENTITY');
- \define('SERIAL', 'SERIAL');
- \define('SMALLSERIAL', 'SMALLSERIAL');
- \define('BIGSERIAL', 'BIGSERIAL');
- \define('ADD', 'ADD');
- \define('DROP', 'DROP COLUMN');
- \define('CHANGE', 'CHANGE COLUMN');
- \define('ALTER', 'ALTER COLUMN');
- \define('MODIFY', 'MODIFY COLUMN');
- \define('RENAME', 'RENAME TO');
- \define('CHANGER', '__modifyingColumns__');
- if (!\defined('_DS'))
- \define('_DS', \DIRECTORY_SEPARATOR);
- \define('CONSTANTS', true);
- }