2330 public struct GenericColumnInfo {
2348 hash<string, hash>
driver;
2467 const CLOB =
"clob";
2781 hash<ColumnOperatorInfo>
make_cop(
string cop,
auto column,
auto arg);
2797 hash<ColumnOperatorInfo>
cop_as(
auto column,
string arg);
2815 hash<ColumnOperatorInfo>
cop_cast(
auto column,
string arg,
auto arg1,
auto arg2);
2829 hash<ColumnOperatorInfo>
cop_prepend(
auto column,
string arg);
2843 hash<ColumnOperatorInfo>
cop_append(
auto column,
string arg);
2975 hash<ColumnOperatorInfo>
cop_value(
auto arg);
2988 hash<ColumnOperatorInfo>
cop_upper(
auto column);
3001 hash<ColumnOperatorInfo>
cop_lower(
auto column);
3027 hash<ColumnOperatorInfo>
cop_min(
auto column);
3040 hash<ColumnOperatorInfo>
cop_max(
auto column);
3053 hash<ColumnOperatorInfo>
cop_avg(
auto column);
3066 hash<ColumnOperatorInfo>
cop_sum(
auto column);
3077 hash<ColumnOperatorInfo>
cop_count(
auto column =
'');
3088 hash<ColumnOperatorInfo>
cop_over(
auto column, *
string partitionby, *
string orderby);
3102 hash<ColumnOperatorInfo>
cop_minus(
auto column1,
auto column2);
3116 hash<ColumnOperatorInfo>
cop_plus(
auto column1,
auto column2);
3130 hash<ColumnOperatorInfo>
cop_divide(
auto column1,
auto column2);
3144 hash<ColumnOperatorInfo>
cop_multiply(
auto column1,
auto column2);
3157 hash<ColumnOperatorInfo>
cop_year(
auto column);
3210 hash<ColumnOperatorInfo>
cop_seq(
string seq, *
string as);
3240 hash<ColumnOperatorInfo>
cop_coalesce(
auto col1,
auto col2);
3255 hash<ColumnOperatorInfo>
cop_substr(
auto column,
int start, *
int count);
3270 hash<ColumnOperatorInfo>
cop_length(
auto column);
3288 hash<ColumnOperatorInfo>
cop_trunc_date(
auto column,
string mask);
3451 hash<ColumnOperatorInfo>
cop_ntile(
int value);
3515 hash<ColumnOperatorInfo>
cop_rank();
3663 hash<UpdateOperatorInfo>
make_uop(
string uop,
auto arg, *hash<UpdateOperatorInfo> nest);
3677 hash<UpdateOperatorInfo>
uop_prepend(
string arg, *hash<UpdateOperatorInfo> nest);
3691 hash<UpdateOperatorInfo>
uop_append(
string arg, *hash<UpdateOperatorInfo> nest);
3704 hash<UpdateOperatorInfo>
uop_upper(*hash<UpdateOperatorInfo> nest);
3717 hash<UpdateOperatorInfo>
uop_lower(*hash<UpdateOperatorInfo> nest);
3732 hash<UpdateOperatorInfo>
uop_substr(
int start, *
int count, *hash<UpdateOperatorInfo> nest);
3746 hash<UpdateOperatorInfo>
uop_plus(
auto arg, *hash<UpdateOperatorInfo> nest);
3760 hash<UpdateOperatorInfo>
uop_minus(
auto arg, *hash<UpdateOperatorInfo> nest);
3774 hash<UpdateOperatorInfo>
uop_multiply(
auto arg, *hash<UpdateOperatorInfo> nest);
3788 hash<UpdateOperatorInfo>
uop_divide(
auto arg, *hash<UpdateOperatorInfo> nest);
3801 hash<UpdateOperatorInfo>
uop_seq(
string seq);
3857 hash<string, hash<JoinOperatorInfo>>
make_jop(
string jop,
AbstractTable table, *
string alias, *hash jcols, *hash cond, *
string ta, *hash<auto> opt);
3865 hash<string, hash<JoinOperatorInfo>>
make_jop(
string jop,
string table_name, *
string alias, *hash jcols, *hash cond, *
string ta, *hash<auto> opt);
3888 hash<string, hash<JoinOperatorInfo>>
join_inner(
AbstractTable table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
3911 hash<string, hash<JoinOperatorInfo>>
join_inner(
Table table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
3934 hash<string, hash<JoinOperatorInfo>>
join_inner(
string table_name, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
3960 hash<string, hash<JoinOperatorInfo>>
join_inner(
string ta,
AbstractTable table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
3984 hash<string, hash<JoinOperatorInfo>>
join_inner(
string ta,
Table table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4010 hash<string, hash<JoinOperatorInfo>>
join_inner_alias(
string ta,
string table_name, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4033 hash<string, hash<JoinOperatorInfo>>
join_left(
AbstractTable table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4056 hash<string, hash<JoinOperatorInfo>>
join_left(
Table table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4081 hash<string, hash<JoinOperatorInfo>>
join_left(
string table_name, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4105 hash<string, hash<JoinOperatorInfo>>
join_left(
string ta,
AbstractTable table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4129 hash<string, hash<JoinOperatorInfo>>
join_left(
string ta,
Table table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4155 hash<string, hash<JoinOperatorInfo>>
join_left_alias(
string ta,
string table_name, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4178 hash<string, hash<JoinOperatorInfo>>
join_right(
AbstractTable table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4201 hash<string, hash<JoinOperatorInfo>>
join_right(
Table table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4226 hash<string, hash<JoinOperatorInfo>>
join_right(
string table_name, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4250 hash<string, hash<JoinOperatorInfo>>
join_right(
string ta,
AbstractTable table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4274 hash<string, hash<JoinOperatorInfo>>
join_right(
string ta,
Table table, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4300 hash<string, hash<JoinOperatorInfo>>
join_right_alias(
string ta,
string table_name, *
string alias, *hash jcols, *hash cond, *hash<auto> opt);
4436 hash<OperatorInfo>
make_op(
string op,
auto arg);
4449 hash<OperatorInfo>
op_like(
string str);
4464 hash<OperatorInfo>
op_lt(
auto arg);
4479 hash<OperatorInfo>
op_le(
auto arg);
4494 hash<OperatorInfo>
op_gt(
auto arg);
4509 hash<OperatorInfo>
op_ge(
auto arg);
4526 hash<OperatorInfo>
op_ne(
auto arg);
4543 hash<OperatorInfo>
op_eq(
auto arg);
4559 hash<OperatorInfo>
op_between(
auto l,
auto r);
4572 hash<OperatorInfo>
op_in();
4583 hash<OperatorInfo>
op_in_select(
string table, hash<auto> select_hash);
4620 hash<OperatorInfo>
op_in(list<auto> args);
4631 hash<OperatorInfo>
op_not(hash arg);
4646 hash<OperatorInfo>
op_clt(
string arg);
4661 hash<OperatorInfo>
op_cle(
string arg);
4676 hash<OperatorInfo>
op_cgt(
string arg);
4691 hash<OperatorInfo>
op_cge(
string arg);
4706 hash<OperatorInfo>
op_cne(
string arg);
4721 hash<OperatorInfo>
op_ceq(
string arg);
4736 hash<OperatorInfo>
op_substr(
int start, *
int count,
string text);
4750 hash<OperatorInfo>
op_substr(
int start,
string text);
4771 hash<string, hash<OperatorInfo>>
wop_or(hash h1, hash h2);
4808 hash<InsertOperatorInfo>
make_iop(
string iop,
auto arg);
4821 hash<InsertOperatorInfo>
iop_seq(
string arg);
4857 AbstractDatasource sqlutil_get_ds(
string type,
string config);
4861 hash<auto> sqlutil_ds(AbstractDatasource ds);
4921 renameKey(
string old_name,
string new_name);
5027 list<string>
keys();
5243 constructor(AbstractDatasource ds, hash tables, *hash<auto> opt);
5271 populate(AbstractDatasource ds, hash<auto> tables, *hash<auto> opt);
5360 bool tableRenamed(
string old_name,
string new_name,
string old_sql_name);
5364 tableRenamedIntern(
string old_name,
string new_name,
string oldsn);
5387 list<auto> getCreateList();
5390 Qore::AbstractIterator createIterator();
5417 getDependencies(reference<hash> tdh, reference<hash> sdh, *reference<hash> th);
5538 constructor(
string n,
string nt, *
string qt,
int sz,
bool nul, *
string dv, *
string c, *
int scale) ;
5640 constructor(*hash c) ;
5678 string getElementName();
5766 list<auto>
getRecreateSql(AbstractDatasource ds,
string table_name, *hash<auto> opt);
5774 constructor(*hash c) ;
5808 string getElementName();
5851 string getEnableSql(
string table_name, *hash<auto> opt);
6002 abstract
string getCreateSql(
string table_name, *hash<auto> opts);
6010 constructor(
string n, *hash<auto> c, *
string n_index) ;
6021 constructor(
string n, *hash<auto> c) ;
6029 constructor(*hash<auto> c) ;
6133 constructor(
string n_name, number n_start = 1, number n_increment = 1, *softnumber n_max);
6149 abstract softlist<auto>
getRenameSql(
string new_name, *hash<auto> opt);
6185 abstract softlist<auto>
getRenameSql(
string new_name, *hash<auto> opt);
6206 constructor(
string n,
string n_type,
string n_src);
6242 constructor(
string n,
string n_type,
string n_src) ;
6263 constructor(*hash c) ;
6293 string getElementName();
6312 abstract list<auto>
getDropSql(
string table_name);
6319 constructor(*hash c) ;
6349 string getElementName();
abstract class for check constraints
Definition SqlUtil.qm.dox.h:5872
string src
the source of the check clause
Definition SqlUtil.qm.dox.h:5876
bool equalImpl(AbstractConstraint c)
returns True if the argument is equal to the current object, False if not
constructor(string n, string n_src)
creates the object and sets its name and the check clause source
bool setIndexBase(string ix)
returns True if the object supports an index property and is set, False if not
clearIndex()
clears any index base for the constraint
the API for a constraint with columns
Definition SqlUtil.qm.dox.h:5898
*string index
the index supporting the constraint
Definition SqlUtil.qm.dox.h:5903
clearIndex()
clears any index base for the constraint
constructor(string name, *hash< auto > cols, *string index)
creates the object from the name and a hash of column information
bool setIndexBase(string ix)
returns True if the object supports an index property and is set, False if not
bool hasColumn(string cname)
returns True if the constraint references the named column
the base class for column information
Definition SqlUtil.qm.dox.h:5502
abstract bool equalImpl(AbstractColumn c)
returns True if the argument is equal to the current object, False if not
abstract string getRenameSql(AbstractTable t, string new_name)
returns a string that can be used to rename the column
hash< GenericColumnInfo > getDescriptionHash()
Returns a description hash of the column.
string native_type
the native type name of the column
Definition SqlUtil.qm.dox.h:5506
abstract list< auto > getModifySqlImpl(AbstractTable t, AbstractColumn c, *hash< auto > opt)
returns a list of sql strings that can be used to modify the column to the new definition
*string comment
comment on the column
Definition SqlUtil.qm.dox.h:5521
*string def_val
default value for column
Definition SqlUtil.qm.dox.h:5518
list< auto > getModifySql(AbstractTable t, AbstractColumn c, *hash< auto > opt)
returns a list of sql strings that can be used to modify the column to the new definition; if the col...
constructor()
empty constructor for subclasses
*string qore_type
the equivalent qore type name of the column if known
Definition SqlUtil.qm.dox.h:5509
string getCreateSql(AbstractTable t)
returns an sql string that can be used to add the column to a table
bool nullable
True if the column can hold a NULL value, False if not
Definition SqlUtil.qm.dox.h:5515
bool equal(AbstractColumn c)
returns True if the argument is equal to the current object, False if not
const DefaultVarcharSize
Default VARCHAR column size.
Definition SqlUtil.qm.dox.h:5527
string getNativeTypeString()
returns the string describing the native type that can be used in SQL
int size
the size of the column
Definition SqlUtil.qm.dox.h:5512
*int scale
the scale for numeric columns
Definition SqlUtil.qm.dox.h:5524
abstract list< auto > getAddColumnSql(AbstractTable t)
returns a list of sql strings that can be used to add the column to an existing table
string getDropSql(string table_name)
returns a string that can be used to drop the column from the table
the API for a constraint with columns
Definition SqlUtil.qm.dox.h:5929
Qore::AbstractIterator getSourceConstraintIterator()
returns an iterator through all known source foreign constraints on the current table
addSourceConstraint(string tname, AbstractForeignConstraint fk)
adds a foreign constraint source to the unique constraint
*hash< string, hash< string, AbstractForeignConstraint > > sourceConstraints
a hash of ForeignConstraintSources, keyed by table name, the value is a hash of foreign constraints k...
Definition SqlUtil.qm.dox.h:5934
renameSourceConstraintTable(string old_name, string new_name)
renames a table in a source constraint
abstract string getCreateSql(string table_name, *hash< auto > opts)
returns a string that can be used to create the constraint in the database
findMatchingIndex(*Indexes indexes)
find an index that matches the constraint and marks both objects as related
*string getIndex()
returns the name of the associated index, if any
hash< auto > getDisableReenableSql(AbstractDatasource ds, string table_name, *hash< auto > opts)
returns lists of SQL strings to disable this constraint plus any dependent constraints and another li...
removeSourceConstraint(string tname, list< auto > cols)
removes a source constraint
bool equalImpl(AbstractConstraint c)
returns True if the argument is equal to the current object, False if not
constructor(string name, *hash< auto > cols, *string index)
creates the object from the name and a hash of column information
bool hasColumn(string cname)
returns True if the constraint references the named column
abstract base class for constraints
Definition SqlUtil.qm.dox.h:5810
abstract bool setIndexBase(string ix)
returns True if the object supports an index property and is set, False if not
string getDisableSql(string table_name)
returns a string that can be used to temporarily disable the constraint from the database; if disabli...
string getName()
returns the constraint name
constructor(string n)
creates the object and sets its name
bool hasColumn(string cname)
returns True if the constraint references the named column
rename(string n)
renames the constraint
abstract list< auto > getRenameSql(string table_name, string new_name)
returns a list of SQL strings that can be used to rename the constraint in the database
abstract clearIndex()
clears any index base for the constraint
string getDropSql(string table_name)
returns a string that can be used to drop the constraint from the database
string name
the name of the constraint
Definition SqlUtil.qm.dox.h:5817
abstract bool equalImpl(AbstractConstraint c)
returns True if the argument is equal to the current object, False if not
bool equal(AbstractConstraint c)
returns True if the argument is equal to the current object, False if not
string getEnableSql(string table_name, *hash< auto > opt)
returns a string that can be used to enable the constraint in the database; if disabling constraints ...
abstract string getCreateSql(string table_name, *hash< auto > opt)
returns a string that can be used to create the constraint in the database
the base class for named objects
Definition SqlUtil.qm.dox.h:5476
constructor()
empty constructor for subclasses
abstract string getDdlName(string name)
returns the column name with quoting in case the column name is a reserved word
string ddl_name
the name of the object for DDL (in case it's a reserved word)
Definition SqlUtil.qm.dox.h:5483
string name
the name of the object
Definition SqlUtil.qm.dox.h:5480
the base class for foreign key constraint information
Definition SqlUtil.qm.dox.h:6093
bool equalImpl(AbstractConstraint con)
returns True if the argument is equal to the current object, False if not
ForeignConstraintTarget target
a ForeignConstraintTarget object to describe the target table and columns
Definition SqlUtil.qm.dox.h:6097
bool hasTargetColumn(string col)
Returns True if the constraint refers to the given target column.
base class for function or objects with code
Definition SqlUtil.qm.dox.h:6186
string getNormalizedSource(string src)
returns normalized source for comparisons
string name
the name of the object
Definition SqlUtil.qm.dox.h:6190
abstract bool equalImpl(AbstractFunctionBase t)
returns True if the argument is equal to the current object, False if not
constructor(string n, string n_type, string n_src)
creates the object from the arguments passed
string getDropSql(*hash< auto > opt)
returns a string that can be used to drop the function from the database
bool equal(AbstractFunctionBase t)
returns True if the argument is equal to the current object, False if not
string src
the source of the object
Definition SqlUtil.qm.dox.h:6196
string type
the type of object
Definition SqlUtil.qm.dox.h:6193
string getType()
returns the type of object
base class for functions
Definition SqlUtil.qm.dox.h:6231
abstract softlist< auto > getRenameSql(string new_name, *hash< auto > opt)
returns a list of strings that can be used to rename the function in the database
setName(string new_name)
sets the new name of the object
abstract list< auto > getCreateSql(*hash< auto > opt)
returns a list of SQL strings that can be used to create the function in the database
constructor(string n, string n_type, string n_src)
creates the object from the arguments passed
abstract container class that throws an exception if an unknown key is accessed
Definition SqlUtil.qm.dox.h:4862
bool partialMatchKeys(hash h1)
returns True if the hash argument has at least the same keys (in any order, can have more keys),...
Qore::AbstractIterator pairIterator()
Returns a HashPairIterator object for the contained hash.
bool hasKeyValue(string k)
Returns True if the key exists in the contained hash and is assigned a value, False if not.
abstract auto take(string k)
removes the given key from the contained hash and returns the value
*string firstKey()
Returns the first key name in the contained hash or nothing if the contained hash has no keys.
Qore::AbstractIterator iterator()
Returns a HashIterator object for the contained hash.
auto memberGate(string k)
returns the value of the given key in the contained hash if it exists, otherwise throws a KEY-ERROR e...
bool hasKey(string k)
Returns True if the key exists in the contained hash (may or may not be assigned a value),...
renameKey(string old_name, string new_name)
renames the given key; maintains the key order
list< auto > values()
Returns a list of values of the contained hash.
*string lastKey()
Returns the last key name in the contained hash or nothing if the contained hash has no keys.
*hash< auto > getHash()
returns the hash contained by this object
clear()
purges the contained data
bool matchKeys(hash h1)
returns True if the hash argument has the same keys (in any order), False if not
*hash h
the data to be contained
Definition SqlUtil.qm.dox.h:4869
abstract string getElementName()
must return the name of the contained element
list< string > keys()
Returns a list of key names of the contained hash.
Qore::AbstractIterator keyIterator()
Returns a HashKeyIterator object for the contained hash.
int size()
Returns the number of keys in the contained hash.
constructor(*hash nh)
creates the object with the hash argument passed
bool empty()
returns True if the container is empty, False if not
bool val()
Returns False if the contained hash has no keys, True if it does.
copy(AbstractHashContainer old)
creates a "deep copy" of the object
the abstract base class for index information
Definition SqlUtil.qm.dox.h:5680
bool equalExceptName(AbstractIndex ix)
returns True if the argument is equal to the current index with the exception of the name,...
bool hasColumn(string cname)
returns True if the constraint references the named column
*AbstractForeignConstraint foreign_constraint
Any foreign constraint that this index supports.
Definition SqlUtil.qm.dox.h:5697
abstract bool equalImpl(AbstractIndex ix)
returns True if the argument is equal to the current index, False if not
setForeignConstraint()
clears the supporting constraint
*AbstractColumnSupportingConstraint getSupportingConstraint()
returns the supporting constraint, if any
abstract string getCreateSql(string table_name, *hash< auto > opt)
returns a string that can be used to create the index in the database
string name
the name of the index
Definition SqlUtil.qm.dox.h:5684
*AbstractForeignConstraint getForeignConstraint()
returns the supporting constraint, if any
constructor(string n, bool u, hash c)
creates the object from the name, a unique flag, and a hash of column information
bool unique
True if the index is a unique index, False if not
Definition SqlUtil.qm.dox.h:5687
*AbstractColumnSupportingConstraint constraint
the AbstractColumnSupportingConstraint that this index supports, if any
Definition SqlUtil.qm.dox.h:5694
string getName()
returns the index name
setSupportingConstraint()
clears the supporting constraint
bool equal(AbstractIndex ix)
returns True if the argument is equal to the current index, False if not
*list< AbstractColumnConstraint > getAllSupportingConstraints()
returns all supporting constraints, if any
string getDropSql(string table_name)
returns a string that can be used to drop the index from the database
abstract string getRenameSql(string table_name, string new_name)
returns a string that can be used to rename the index in the database
Columns columns
an object of class Columns representing the columns in the index
Definition SqlUtil.qm.dox.h:5690
list< auto > getRecreateSql(AbstractDatasource ds, string table_name, *hash< auto > opt)
returns a list of strings to drop and recreate the current index; if there are dependent constraints,...
abstract container class that throws an exception if an unknown key is accessed
Definition SqlUtil.qm.dox.h:5143
list< auto > getList()
returns the list contained by this object
bool empty()
returns True if the container is empty, False if not
abstract auto get(softint i)
returns the value of the given element in the contained list if it exists, otherwise throws an ELEMEN...
auto take(int i)
removes the given element from the contained list and returns the value
add(auto val)
adds the given value to the list
bool val()
Returns False if the contained list is empty, True if not.
abstract string getElementName()
must return the name of the contained element
constructor(softlist nl)
creates the object with the list<auto> argument passed
Qore::ListIterator iterator()
Returns a ListIterator object for the contained list.
int size()
Returns the number of elements in the contained list.
represents a primary key
Definition SqlUtil.qm.dox.h:6012
base class for sequences
Definition SqlUtil.qm.dox.h:6114
*number max
the ending number
Definition SqlUtil.qm.dox.h:6127
string name
the name of the sequence
Definition SqlUtil.qm.dox.h:6118
string getDropSql(*hash< auto > opt)
returns a string that can be used to drop the sequence from the database
abstract softlist< auto > getRenameSql(string new_name, *hash< auto > opt)
returns a list of strings that can be used to rename the sequence in the database
abstract string getCreateSql(*hash< auto > opt)
returns a string that can be used to create the sequence in the database
number start
the starting number
Definition SqlUtil.qm.dox.h:6121
number increment
the increment
Definition SqlUtil.qm.dox.h:6124
constructor(string n_name, number n_start=1, number n_increment=1, *softnumber n_max)
creates the object from the arguments
the base abstract class for the table implementation
Definition AbstractTable.qc.dox.h:30
the base class for triggers
Definition SqlUtil.qm.dox.h:6295
abstract softlist< auto > getRenameSql(string table_name, string new_name)
returns a string that can be used to rename the trigger in the database
abstract list< auto > getDropSql(string table_name)
returns a string that can be used to drop the trigger in the database
constructor(string n, string n_src)
creates the object and sets its name and the trigger source
abstract list< auto > getCreateSql(string table_name, *hash< auto > opt)
returns a string that can be used to create the trigger in the database
represents a unique column constraint
Definition SqlUtil.qm.dox.h:6003
constructor(string n, *hash< auto > c, *string n_index)
creates the object from the name an a hash of column information
base class for views
Definition SqlUtil.qm.dox.h:6150
bool updatable
Flag showing if is the view updatable with DML commands.
Definition SqlUtil.qm.dox.h:6163
string name
the name of the sequence
Definition SqlUtil.qm.dox.h:6157
abstract softlist< auto > getRenameSql(string new_name, *hash< auto > opt)
returns a list with command(s) that can be used to rename the view in the database
constructor(string n_name, string n_src)
creates the object from the arguments
string src
the source code
Definition SqlUtil.qm.dox.h:6160
string getDropSql(*hash< auto > opt)
returns a string that can be used to drop the view from the database
abstract string getCreateSql(*hash< auto > opt)
returns a string that can be used to create the view in the database
column container class that throws an exception if an unknown column is accessed
Definition SqlUtil.qm.dox.h:5420
bool equal(Columns cols)
returns True if the argument has the same columns in the same order as the current object,...
add(string k, AbstractColumn val)
adds the given value to the hash with the given key name
Columns subset(softlist l)
returns a subset of the current columns according to the list<auto> argument
string getElementName()
returns "column" since this object stores column objects
AbstractIterator getSqlColumnNameIterator()
returns an iterator for column SQL names
AbstractColumn memberGate(string k)
returns the AbstractColumn object corresponding to the key given or throws a KEY-ERROR exception
AbstractColumn take(string k)
removes the given key from the contained hash and returns the value
constructor(*hash c)
creates the object from the argument
constraint container class that throws an exception if an unknown constraint is accessed
Definition SqlUtil.qm.dox.h:5768
AbstractConstraint memberGate(string k)
returns the AbstractConstraint object corresponding to the key given or throws a KEY-ERROR exception
AbstractConstraint take(string k)
removes the given key from the contained hash and returns the value
*AbstractUniqueConstraint findEqualUniqueConstraint(AbstractUniqueConstraint uk)
finds a unique constraint with the same columns as the unique constraint passed
add(string k, AbstractConstraint val)
adds the given value to the hash with the given key name
a class describing a foreign constraint target
Definition SqlUtil.qm.dox.h:6070
constructor(string t, Columns c)
creates the object and sets the target table name and the target columns
bool equal(ForeignConstraintTarget targ)
returns True if the argument is equal to the current object, False if not
Columns columns
columns in the target table
Definition SqlUtil.qm.dox.h:6077
bool hasColumn(string cname)
returns True if the constraint references the named column
string table
the name of the target table
Definition SqlUtil.qm.dox.h:6074
foreign constraint container class that throws an exception if an unknown constraint is accessed
Definition SqlUtil.qm.dox.h:6023
AbstractForeignConstraint take(string k)
removes the given key from the contained hash and returns the value
*AbstractForeignConstraint findEqual(AbstractForeignConstraint fk)
find an index with columns equal to the index passed
add(string k, AbstractForeignConstraint val)
adds the given value to the hash with the given key name
string getElementName()
returns "foreign constraint" for the type of object encapsulated
*hash< auto > findConstraintOn(string table, softlist< auto > cols)
returns either a hash of AbstractColumn information or nothing if no foreign constraint can be found ...
AbstractForeignConstraint memberGate(string k)
returns the AbstractForeignConstraint object corresponding to the key given or throws a KEY-ERROR exc...
function container class that throws an exception if an unknown function is accessed
Definition SqlUtil.qm.dox.h:6257
add(string k, AbstractFunction val)
adds the given value to the hash with the given key name
AbstractFunction take(string k)
removes the given key from the contained hash and returns the value
AbstractFunction memberGate(string k)
returns the AbstractFunction object corresponding to the key given or throws a KEY-ERROR exception
index container class that throws an exception if an unknown index is accessed
Definition SqlUtil.qm.dox.h:5634
AbstractIndex take(string k)
removes the given key from the contained hash and returns the value
*AbstractIndex tryTake(string k)
tries to remove the given key from the contained hash and returns the value if it exists
*AbstractIndex findEqual(AbstractIndex ix)
find an index with columns equal to the index passed
add(string k, AbstractIndex val)
adds the given value to the hash with the given key name
AbstractIndex memberGate(string k)
returns the AbstractIndex object corresponding to the key given or throws a KEY-ERROR exception
represents a database table; this class embeds an AbstractTable object that is created automatically ...
Definition Table.qc.dox.h:44
the table container class stores a collection of tables in a schema
Definition SqlUtil.qm.dox.h:5232
AbstractTable memberGate(string k)
returns the AbstractTable object corresponding to the key given or throws a KEY-ERROR exception
Qore::AbstractIterator dropIterator()
returns an iterator for a list of cached table names in the order that can be used to drop the tables...
populate(AbstractDatasource ds, hash< auto > tables, *hash< auto > opt)
populates the object from a hash<auto> description
*list< auto > getDropAllForeignConstraintsOnTableSql(string name, *hash< auto > opt)
returns a list of SQL strings that can be used to drop all the foreign constraints on a particular ta...
list< auto > getDropList()
returns a list of cached table names in the order that can be used to drop the tables,...
bool tableRenamed(string old_name, string new_name, string old_sql_name)
updates table names and internal references for renamed tables
add(string k, Table val)
adds the given value to the hash with the given key name
AbstractTable take(string k)
removes the given key from the contained hash and returns the value
*AbstractTable getIfExists(AbstractDatasource ds, string name)
gets a table from the database or from the cache if already cached; if the table does not exist,...
*string getDropConstraintIfExistsSql(string tname, string cname, *hash< auto > opts)
returns an SQL string that can be used to drop an existing constraint on a table, if the table is not...
*string getRenameTableIfExistsSql(string old_name, string new_name, *hash< auto > opts)
returns an SQL string that can be used to rename the given table if it exists and the target does not...
string getElementName()
returns "table" since this object stores AbstractTable objects
constructor()
creates an empty object
AbstractTable get(AbstractDatasource ds, string name)
gets a table from the database or from the cache if already cached
trigger container class that throws an exception if an unknown trigger is accessed
Definition SqlUtil.qm.dox.h:6313
AbstractTrigger memberGate(string k)
returns the AbstractTrigger object corresponding to the key given or throws a KEY-ERROR exception
AbstractTrigger take(string k)
removes the given key from the contained hash and returns the value
add(string k, AbstractTrigger val)
adds the given value to the hash with the given key name
const SZ_NONE
Definition SqlUtil.qm.dox.h:2472
const SZ_NUM
the data type is numeric so takes an optional precision and scale
Definition SqlUtil.qm.dox.h:2481
const SZ_MAND
the data type takes a mandatory size parameter
Definition SqlUtil.qm.dox.h:2475
const SZ_OPT
the data type takes an optional size parameter
Definition SqlUtil.qm.dox.h:2478
const CLOB
specifies a large variable-length character column (ie CLOB or TEXT, etc)
Definition SqlUtil.qm.dox.h:2464
const DB_SYNONYMS
Feature: synonyms.
Definition SqlUtil.qm.dox.h:2444
const DB_PACKAGES
Feature: packages.
Definition SqlUtil.qm.dox.h:2432
const VARCHAR
Definition SqlUtil.qm.dox.h:2452
const DB_MVIEWS
Feature: materialized views / snapshots.
Definition SqlUtil.qm.dox.h:2430
const BLOB
specifies a large variable-length binary column (ie BLOB or BYTEA, etc)
Definition SqlUtil.qm.dox.h:2461
const DB_PROCEDURES
Feature: procedures.
Definition SqlUtil.qm.dox.h:2434
const DB_TABLES
Feature: tables.
Definition SqlUtil.qm.dox.h:2438
const DB_VIEWS
Feature: views.
Definition SqlUtil.qm.dox.h:2442
const CHAR
specifies a CHAR column
Definition SqlUtil.qm.dox.h:2458
const NUMERIC
specifies a numeric column (equivalent to Qore::Type::Number)
Definition SqlUtil.qm.dox.h:2455
const DB_FUNCTIONS
Feature: functions.
Definition SqlUtil.qm.dox.h:2428
const DB_SEQUENCES
Feature: sequences.
Definition SqlUtil.qm.dox.h:2436
const DB_TYPES
Feature: named types.
Definition SqlUtil.qm.dox.h:2440
hash< ColumnOperatorInfo > cop_plus(auto column1, auto column2)
returns a ColumnOperatorInfo hash for the "+" operator with the given arguments
hash< ColumnOperatorInfo > cop_year(auto column)
returns a ColumnOperatorInfo hash for the "year" operator with the given argument
hash< ColumnOperatorInfo > cop_as(auto column, string arg)
returns a ColumnOperatorInfo hash for the "as" operator with the given argument
hash< ColumnOperatorInfo > cop_seq_currval(string seq, *string as)
returns a ColumnOperatorInfo hash for the "seq_currval" operator with the given argument giving the s...
hash< ColumnOperatorInfo > cop_year_day(auto column)
returns a ColumnOperatorInfo hash for the "year_day" operator with the given argument
hash< ColumnOperatorInfo > cop_year_month(auto column)
returns a ColumnOperatorInfo hash for the "year_month" operator with the given argument
hash< ColumnOperatorInfo > cop_count(auto column='')
returns a ColumnOperatorInfo hash for the "count" operator; returns row counts
hash< ColumnOperatorInfo > cop_append(auto column, string arg)
returns a ColumnOperatorInfo hash for the "append" operator with the given argument
hash< ColumnOperatorInfo > cop_coalesce(auto col1, auto col2)
returns a ColumnOperatorInfo hash for the "coalesce" operator with the given column arguments; the fi...
hash< ColumnOperatorInfo > cop_dense_rank()
Analytic/window function: rank of the current row without gaps.
hash< ColumnOperatorInfo > cop_length(auto column)
returns a ColumnOperatorInfo hash for the "len" operator with the given argument; returns the length ...
hash< ColumnOperatorInfo > cop_lower(auto column)
returns a ColumnOperatorInfo hash for the "lower" operator with the given argument; returns a column ...
hash< ColumnOperatorInfo > cop_multiply(auto column1, auto column2)
returns a ColumnOperatorInfo hash for the "*" operator with the given arguments
hash< ColumnOperatorInfo > cop_seq(string seq, *string as)
returns a ColumnOperatorInfo hash for the "seq" operator with the given argument giving the sequence ...
hash< ColumnOperatorInfo > cop_value(auto arg)
returns a ColumnOperatorInfo hash for the "value" (literal) operator with the given argument
hash< ColumnOperatorInfo > cop_last_value(any column)
Analytic/window function: value evaluated at the row that is the last row of the window frame.
hash< ColumnOperatorInfo > cop_prepend(auto column, string arg)
returns a ColumnOperatorInfo hash for the "prepend" operator with the given argument
hash< ColumnOperatorInfo > cop_rank()
Analytic/window function: rank of the current row with gaps.
hash< ColumnOperatorInfo > cop_min(auto column)
returns a ColumnOperatorInfo hash for the "min" operator; returns minimum column values
hash< ColumnOperatorInfo > cop_row_number()
Analytic/window function: number of the current row within its partition, counting from 1.
hash< ColumnOperatorInfo > cop_cume_dist()
Analytic/window function: relative rank of the current row.
hash< ColumnOperatorInfo > cop_cast(auto column, string arg, auto arg1, auto arg2)
returns a ColumnOperatorInfo hash for the "cast" operator with the given argument(s)
hash< ColumnOperatorInfo > cop_upper(auto column)
returns a ColumnOperatorInfo hash for the "upper" operator with the given argument; returns a column ...
hash< ColumnOperatorInfo > cop_avg(auto column)
returns a ColumnOperatorInfo hash for the "avg" operator; returns average column values
hash< ColumnOperatorInfo > cop_percent_rank()
Analytic/window function: relative rank of the current row.
hash< ColumnOperatorInfo > cop_substr(auto column, int start, *int count)
returns a ColumnOperatorInfo hash for the "substr" operator with the given arguments; returns a subst...
hash< ColumnOperatorInfo > cop_sum(auto column)
returns a ColumnOperatorInfo hash for the "sum" operator; returns the total sum of a numeric column.
hash< ColumnOperatorInfo > cop_distinct(auto column)
returns a ColumnOperatorInfo hash for the "distinct" operator with the given argument; returns distin...
hash< ColumnOperatorInfo > cop_minus(auto column1, auto column2)
returns a ColumnOperatorInfo hash for the "-" operator with the given arguments
hash< ColumnOperatorInfo > cop_over(auto column, *string partitionby, *string orderby)
returns a ColumnOperatorInfo hash for the "over" clause
hash< ColumnOperatorInfo > make_cop(string cop, auto column, auto arg)
hash< ColumnOperatorInfo > cop_divide(auto column1, auto column2)
returns a ColumnOperatorInfo hash for the "/" operator with the given arguments
hash< ColumnOperatorInfo > cop_ntile(int value)
Analytic/window function: integer ranging from 1 to the argument value, dividing the partition as equ...
hash< ColumnOperatorInfo > cop_first_value(any column)
Analytic/window function: value evaluated at the row that is the first row of the window frame.
hash< ColumnOperatorInfo > cop_max(auto column)
returns a ColumnOperatorInfo hash for the "max" operator; returns maximum column values
hash< ColumnOperatorInfo > cop_year_hour(auto column)
returns a ColumnOperatorInfo hash for the "year_hour" operator with the given argument
hash< ColumnOperatorInfo > cop_trunc_date(auto column, string mask)
Truncates a date column or value regarding the given mask. The resulting value remains Qore::date (no...
const DT_YEAR
Definition SqlUtil.qm.dox.h:3600
const DT_MINUTE
Format unit: minute.
Definition SqlUtil.qm.dox.h:3612
const DT_SECOND
Format unit: hour.
Definition SqlUtil.qm.dox.h:3615
const DT_MONTH
Format unit: month.
Definition SqlUtil.qm.dox.h:3603
const DT_HOUR
Format unit: hour.
Definition SqlUtil.qm.dox.h:3609
const DT_DAY
Format unit: day.
Definition SqlUtil.qm.dox.h:3606
const COP_MAX
to return the maximum value
Definition SqlUtil.qm.dox.h:2536
const COP_OVER
the SQL "over" clause
Definition SqlUtil.qm.dox.h:2556
const COP_SEQ_CURRVAL
to return the last value of a sequence issued in the same session
Definition SqlUtil.qm.dox.h:2606
const COP_LENGTH
to get the length of a text field
Definition SqlUtil.qm.dox.h:2623
const COP_RANK
Analytic (window) function: RANK.
Definition SqlUtil.qm.dox.h:2681
const COP_VALUE
to append a constant value (SQL Literal) to use as an output column value
Definition SqlUtil.qm.dox.h:2511
const COP_COALESCE
to return the first non-null argument in the list
Definition SqlUtil.qm.dox.h:2611
const COP_MIN
to return the minimum value
Definition SqlUtil.qm.dox.h:2531
const COP_YEAR_HOUR
to return a date value with year to hextern information
Definition SqlUtil.qm.dox.h:2596
const COP_DIVIDE
the SQL "divide" operator
Definition SqlUtil.qm.dox.h:2571
const COP_YEAR
to return a date value with year information only
Definition SqlUtil.qm.dox.h:2581
const COP_COUNT
to return the row count
Definition SqlUtil.qm.dox.h:2551
const COP_MULTIPLY
the SQL "multiply" operator
Definition SqlUtil.qm.dox.h:2576
const COP_AVG
to return the average value
Definition SqlUtil.qm.dox.h:2541
const COP_PLUS
the SQL "plus" operator
Definition SqlUtil.qm.dox.h:2566
const COP_CUME_DIST
Analytic (window) function: CUME_DIST.
Definition SqlUtil.qm.dox.h:2639
const COP_SUBSTR
to extract a substring from a column
Definition SqlUtil.qm.dox.h:2616
const COP_SEQ
to return the next value of a sequence
Definition SqlUtil.qm.dox.h:2601
const COP_APPEND
to append a string to a column on output
Definition SqlUtil.qm.dox.h:2506
const COP_PERCENT_RANK
Analytic (window) function: PERCENT_RANK.
Definition SqlUtil.qm.dox.h:2674
const COP_NTILE
Analytic (window) function: NTILE.
Definition SqlUtil.qm.dox.h:2667
const COP_YEAR_MONTH
to return a date value with year to month information
Definition SqlUtil.qm.dox.h:2586
const COP_PREPEND
to prepend a string to a column on output
Definition SqlUtil.qm.dox.h:2501
const COP_LOWER
to return column value in lower case
Definition SqlUtil.qm.dox.h:2521
const COP_AS
Definition SqlUtil.qm.dox.h:2491
const COP_CAST
to convert column value into another datatype
Definition SqlUtil.qm.dox.h:2496
const COP_ROW_NUMBER
Analytic (window) function: ROW_NUMBER.
Definition SqlUtil.qm.dox.h:2688
const COP_YEAR_DAY
to return a date value with year to day information
Definition SqlUtil.qm.dox.h:2591
const COP_UPPER
to return column value in upper case
Definition SqlUtil.qm.dox.h:2516
const COP_DENSE_RANK
Analytic (window) function: DENSE_RANK.
Definition SqlUtil.qm.dox.h:2646
const COP_TRUNC_DATE
to return the date with truncated value
Definition SqlUtil.qm.dox.h:2632
const COP_MINUS
the SQL "minus" operator
Definition SqlUtil.qm.dox.h:2561
const COP_LAST_VALUE
Analytic (window) function: LAST_VALUE.
Definition SqlUtil.qm.dox.h:2660
const COP_FIRST_VALUE
Analytic (window) function: FIRST_VALUE.
Definition SqlUtil.qm.dox.h:2653
const DefaultCopMap
a hash of default column operator descriptions
Definition SqlUtil.qm.dox.h:2724
const COP_DISTINCT
to return distinct values
Definition SqlUtil.qm.dox.h:2526
const COP_SUM
to return the sum value
Definition SqlUtil.qm.dox.h:2546
hash< InsertOperatorInfo > make_iop(string iop, auto arg)
hash< InsertOperatorInfo > iop_seq_currval(string arg)
returns an InsertOperatorInfo hash for retrieving the current value of the given sequence in insert q...
hash< InsertOperatorInfo > iop_seq(string arg)
returns an InsertOperatorInfo hash for retrieving the value of the given sequence in insert queries
const IOP_SEQ
Definition SqlUtil.qm.dox.h:4781
const DefaultIopMap
a hash of default insert operator descriptions (currently empty, all operators are driver-dependent)
Definition SqlUtil.qm.dox.h:4789
const IOP_SEQ_CURRVAL
for using the last value of a sequence issued in the current session
Definition SqlUtil.qm.dox.h:4786
hash< string, hash< JoinOperatorInfo > > join_inner_alias(string ta, string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
returns a hash for standard inner joins with the given arguments for use when joining with a table ot...
hash< string, hash< JoinOperatorInfo > > join_right(AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
returns a hash for right outer joins with the given arguments
hash< string, hash< JoinOperatorInfo > > join_right_alias(string ta, string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
returns a hash for right outer joins with the given arguments for use when joining with a table other...
hash< string, hash< JoinOperatorInfo > > join_left(AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
returns a hash for left outer joins with the given arguments
hash< string, hash< JoinOperatorInfo > > join_left_alias(string ta, string table_name, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
returns a hash for left outer joins with the given arguments for use when joining with a table other ...
hash< string, hash< JoinOperatorInfo > > make_jop(string jop, AbstractTable table, *string alias, *hash jcols, *hash cond, *string ta, *hash< auto > opt)
hash< string, hash< JoinOperatorInfo > > join_inner(AbstractTable table, *string alias, *hash jcols, *hash cond, *hash< auto > opt)
returns a hash for standard inner joins with the given arguments
const JopMap
a hash of valid join operators
Definition SqlUtil.qm.dox.h:3837
const JOP_INNER
Definition SqlUtil.qm.dox.h:3824
const JOP_RIGHT
for right outer joins
Definition SqlUtil.qm.dox.h:3834
const JOP_LEFT
for left outer joins
Definition SqlUtil.qm.dox.h:3829
hash< OperatorInfo > op_ceq(string arg)
returns an OperatorInfo hash for the "=" operator with the given argument for use in where clauses wh...
hash< OperatorInfo > op_clt(string arg)
returns an OperatorInfo hash for the "<" operator with the given argument for use in where clauses wh...
hash< OperatorInfo > op_between(auto l, auto r)
returns an OperatorInfo hash for the "between" operator with the given arguments, neither of which ca...
hash< OperatorInfo > op_cle(string arg)
returns an OperatorInfo hash for the "<=" operator with the given argument for use in where clauses w...
hash< OperatorInfo > op_cne(string arg)
returns an OperatorInfo hash for the "!=" or "<>" operator with the given argument for use in where c...
hash< OperatorInfo > op_cgt(string arg)
returns an OperatorInfo hash for the ">" operator with the given argument for use in where clauses wh...
hash< OperatorInfo > op_ne(auto arg)
returns an OperatorInfo hash for the "!=" or "<>" operator with the given argument for use in where c...
hash< string, hash< OperatorInfo > > wop_or(hash h1, hash h2)
returns an OperatorInfo hash with a fake "_OR_" column name; the list of arguments to the function is...
hash< OperatorInfo > make_op(string op, auto arg)
hash< OperatorInfo > op_lt(auto arg)
returns an OperatorInfo hash for the "<" operator with the given argument for use in where clauses wh...
hash< OperatorInfo > op_substr(int start, *int count, string text)
returns an OperatorInfo hash for the "substr" operator with the given arguments; for use in where cla...
hash< OperatorInfo > op_like(string str)
returns an OperatorInfo hash for the "like" operator with the given argument for use in where clauses
hash< OperatorInfo > op_gt(auto arg)
returns an OperatorInfo hash for the ">" operator with the given argument for use in where clauses wh...
hash< OperatorInfo > op_in_select(string table, hash< auto > select_hash)
returns an OperatorInfo hash for the "in" operator with a subquery as the argument; for use in where ...
hash< OperatorInfo > op_ge(auto arg)
returns an OperatorInfo hash for the ">=" operator with the given argument for use in where clauses w...
hash< OperatorInfo > op_not(hash arg)
returns an OperatorInfo hash for the "not" operator; for use in where clauses
hash< OperatorInfo > op_eq(auto arg)
returns an OperatorInfo hash for the "=" operator with the given argument for use in where clauses wh...
hash< OperatorInfo > op_cge(string arg)
returns an OperatorInfo hash for the ">=" operator with the given argument for use in where clauses w...
hash< OperatorInfo > op_in()
returns an OperatorInfo hash for the "in" operator with all arguments passed to the function; for use...
hash< OperatorInfo > op_le(auto arg)
returns an OperatorInfo hash for the "<=" operator with the given argument for use in where clauses w...
const OP_GE
the SQL greater than or equals operator (>=) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4328
const OP_NE
the SQL not equals operator (!= or <>) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4333
const OP_LE
the SQL less than or equals (<=) operator for use in Where Clauses
Definition SqlUtil.qm.dox.h:4318
const OP_EQ
the SQL equals operator (=) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4338
const OP_IN
the SQL "in" operator for use in Where Clauses
Definition SqlUtil.qm.dox.h:4378
const OP_NOT
the SQL "not" operator for use in Where Clauses
Definition SqlUtil.qm.dox.h:4383
const DefaultExpressionMap
Default expressions to be supported by all SqlUtil modules.
Definition SqlUtil.qm.dox.h:4401
const DefaultOpMap
a hash of valid operators for use in Where Clauses
Definition SqlUtil.qm.dox.h:4405
const OP_SUBSTR
the SQL "substr" operator for use in Where Clauses
Definition SqlUtil.qm.dox.h:4388
const OP_CGE
the SQL greater than or equals operator (>=) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4358
const OP_LT
the SQL less than (<) operator for use in Where Clauses
Definition SqlUtil.qm.dox.h:4313
const OP_CLE
the SQL less than or equals (<=) operator for use in Where Clauses
Definition SqlUtil.qm.dox.h:4348
const OP_BETWEEN
the SQL "between" operator for use in Where Clauses
Definition SqlUtil.qm.dox.h:4373
const OP_GT
the SQL greater than operator (>) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4323
const OP_CNE
the SQL not equals operator (!= or <>) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4363
const OP_CLT
the SQL less than (<) operator for use in Where Clauses when comparing two columns
Definition SqlUtil.qm.dox.h:4343
const OP_OR
to combine SQL expressions with "or" for use in Where Clauses
Definition SqlUtil.qm.dox.h:4393
const OP_IN_SELECT
the SQL "in" operator with a select query for use in Where Clauses
Definition SqlUtil.qm.dox.h:4398
const OP_CGT
the SQL greater than operator (>) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4353
const OP_CEQ
the SQL equals operator (=) for use in Where Clauses
Definition SqlUtil.qm.dox.h:4368
const OP_LIKE
Definition SqlUtil.qm.dox.h:4308
hash< UpdateOperatorInfo > uop_plus(auto arg, *hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "+" operator with the given arguments
hash< UpdateOperatorInfo > uop_seq_currval(string seq)
returns an UpdateOperatorInfo hash for the "seq" operator with the given argument giving the sequence...
hash< UpdateOperatorInfo > uop_prepend(string arg, *hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "prepend" operator with the given argument
hash< UpdateOperatorInfo > uop_seq(string seq)
returns an UpdateOperatorInfo hash for the "seq" operator with the given argument giving the sequence...
hash< UpdateOperatorInfo > uop_upper(*hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "upper" operator with the given argument; returns a column...
hash< UpdateOperatorInfo > uop_divide(auto arg, *hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "/" operator with the given arguments
hash< UpdateOperatorInfo > uop_append(string arg, *hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "append" or concatenate operator with the given argument
hash< UpdateOperatorInfo > make_uop(string uop, auto arg, *hash< UpdateOperatorInfo > nest)
hash< UpdateOperatorInfo > uop_substr(int start, *int count, *hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "substr" operator with the given arguments; returns a subs...
hash< UpdateOperatorInfo > uop_multiply(auto arg, *hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "*" operator with the given arguments
hash< UpdateOperatorInfo > uop_lower(*hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "lower" operator with the given argument; returns a column...
hash< UpdateOperatorInfo > uop_minus(auto arg, *hash< UpdateOperatorInfo > nest)
returns an UpdateOperatorInfo hash for the "-" operator with the given arguments
const DefaultUopMap
Definition SqlUtil.qm.dox.h:3626
Qore AbstractDatabase class definition.
Definition AbstractDatabase.qc.dox.h:26
sqlutil_register_ds_deserializer(*code new_ds_get)
registers a closure or call reference taking a string type and string datasource configuration that w...
sqlutil_register_ds_serializer(*code new_ds_do)
registers a closure or call reference taking a string type and string datasource configuration that w...
const SqlUtilDrivers
known drivers
Definition SqlUtil.qm.dox.h:4836
column operator info hash as returned by all column operator functions
Definition SqlUtil.qm.dox.h:2357
string cop
the column operator string code
Definition SqlUtil.qm.dox.h:2358
auto arg
optional argument
Definition SqlUtil.qm.dox.h:2360
auto column
column sopecifier, may be a string or a complex hash
Definition SqlUtil.qm.dox.h:2359
bool notnull
if the column should have a "not null" constraint on it; if missing the default value is False
Definition SqlUtil.qm.dox.h:2343
hash< string, hash > driver
this key can optionally contain a hash keyed by driver name which contains a hash of values that will...
Definition SqlUtil.qm.dox.h:2345
auto default_value
the default value for the column
Definition SqlUtil.qm.dox.h:2337
softint scale
for numeric data types, this value gives the scale
Definition SqlUtil.qm.dox.h:2335
softint size
for data types requiring a size component, the size; for numeric columns this represents the precisio...
Definition SqlUtil.qm.dox.h:2333
bool default_value_native
a boolean flag to say if a default_value should be validated against table column type (False) or use...
Definition SqlUtil.qm.dox.h:2339
*string comment
an optional comment for the column
Definition SqlUtil.qm.dox.h:2341
string qore_type
a qore type string that will be converted to a native DB type with some default conversion
Definition SqlUtil.qm.dox.h:2329
string native_type
the native database column type; if both native_type and qore_type are given then native_type is used
Definition SqlUtil.qm.dox.h:2331
*bool auto_increment
True for DBs that support an auto-increment column
Definition SqlUtil.qm.dox.h:2347
insert operator info hash as returned by all insert operator functions
Definition SqlUtil.qm.dox.h:2364
string _iop
the insert operator string code
Definition SqlUtil.qm.dox.h:2365
any arg
optional argument
Definition SqlUtil.qm.dox.h:2366
join operator info hash as returned by all join operator functions
Definition SqlUtil.qm.dox.h:2377
*hash cond
additional conditions for the join clause for the table argument; see Where Clauses for more informat...
Definition SqlUtil.qm.dox.h:2382
*string alias
optional alias for table in the query
Definition SqlUtil.qm.dox.h:2380
*string ta
optional table name or alias of the other table to join with when not joining with the primary table
Definition SqlUtil.qm.dox.h:2383
auto table
the table to join with (either an AbstractTable object or a string table name)
Definition SqlUtil.qm.dox.h:2379
*hash jcols
the columns to use for the join, the keys will be columns in the source table and the values are colu...
Definition SqlUtil.qm.dox.h:2381
*hash< auto > opt
optional join options (for example, to specify a partition for the join if supported)
Definition SqlUtil.qm.dox.h:2384
string jop
the join operator string code
Definition SqlUtil.qm.dox.h:2378
SQL operator info hash as returned by all operator functions.
Definition SqlUtil.qm.dox.h:2351
auto arg
optional argument
Definition SqlUtil.qm.dox.h:2353
string op
the operator string code
Definition SqlUtil.qm.dox.h:2352
Query information.
Definition SqlUtil.qm.dox.h:2691
*hash< auto > expression_map
The expression map.
Definition SqlUtil.qm.dox.h:2711
*hash< string, AbstractTable > join_map
Tables in this join; table alias -> table.
Definition SqlUtil.qm.dox.h:2702
*hash< auto > pseudo_column_map
Any valid pseudocolumns or aliases generated in th query.
Definition SqlUtil.qm.dox.h:2708
*hash< auto > where_operator_map
The old-style backwards-compatible "where operator" map.
Definition SqlUtil.qm.dox.h:2714
object table
The primary table object.
Definition SqlUtil.qm.dox.h:2693
*hash< auto > query_hash
The original query hash.
Definition SqlUtil.qm.dox.h:2696
*hash< auto > column_operator_map
Any custom column operator map.
Definition SqlUtil.qm.dox.h:2717
list< auto > args
arguments to bind in the query generated
Definition SqlUtil.qm.dox.h:2720
*hash< auto > query_options
Any query options.
Definition SqlUtil.qm.dox.h:2699
*hash< string, bool > subquery_column_map
When executing a superquery, we can only reference colums in the subquery.
Definition SqlUtil.qm.dox.h:2705
A hash describing SQL and arguments for an SQL DML command.
Definition SqlUtil.qm.dox.h:2413
string sql
the SQL string for the update
Definition SqlUtil.qm.dox.h:2415
list< auto > args
the arguments for the string
Definition SqlUtil.qm.dox.h:2418
column data type options
Definition SqlUtil.qm.dox.h:2388
*string number_format
optional format string for converting strings to numeric / decimal / number columns
Definition SqlUtil.qm.dox.h:2399
*TimeZone data_timezone
the timezone when converting dates from external data to the DB's date
Definition SqlUtil.qm.dox.h:2393
*softint maxlen
optional additional limit to the maximum length of the data
Definition SqlUtil.qm.dox.h:2407
*TimeZone db_timezone
the timezone to use when sending date/time values to the DB
Definition SqlUtil.qm.dox.h:2396
*softbool mandatory
optional flag to overrude any nullable attribute and require data for the column
Definition SqlUtil.qm.dox.h:2402
*string date_format
optional format string for converting strings to dates for date / timestamp columns
Definition SqlUtil.qm.dox.h:2390
update operator info hash as returned by all update operator functions
Definition SqlUtil.qm.dox.h:2370
*hash nest
option nested operation hash
Definition SqlUtil.qm.dox.h:2373
auto arg
optional argument
Definition SqlUtil.qm.dox.h:2372
string uop
the update operator string code
Definition SqlUtil.qm.dox.h:2371