193 parse_schema_name(
string nname, reference<*string> schema, reference<string> name);
239 constructor(
string n_name,
bool n_unique, hash n_cols,
string n_type =
'BTREE') ;
265 constructor(
string n, Columns c, ForeignConstraintTarget t) ;
268 string getCreateSql(
string table_name, *hash opt);
275 string getCreateSql(
string name,
string table_name, *hash opt);
278 string getAddSql(
string name,
string table_name, *hash opt);
299 constructor(
string n,
string nt, *
string qt,
int sz,
bool nul, *
string dv, *
string cm, *softint bs, *
int scale) ;
375 const AUTO_INCREMENT_VALID_TYPES = {
385 "double precision": True,
390 constructor(
string n,
string nt, *
string qt,
int sz,
bool nul, *
string dv, *
string cm, softint bs, softint
scale,
bool n_unsigned = False,
bool n_auto_increment = False,
bool n_pk = False)
401 validateConstructor();
405 string getNativeTypeString();
421 bool setIndexBase(
string ix);
429 getIndexSql(reference<string> sql,
string name, *hash opts);
436 constructor(
string n, hash n_cols) ;
455 MysqlColumn memberGate(
string k);
458 string getCreateSql(
string table_name, *hash opts);
461 list getRenameSql(
string table_name,
string new_name);
464 string getCreateSql(
string name,
string table_name, *hash opts);
468 string getDropSql(
string table_name);
479 constructor(*hash c) ;
501 string getCreateSql(
string table_name, *hash opts);
585 constructor(
string n_table_name,
string n_name, number n_start = 1, number n_increment = 1, *softnumber n_end) ;
620 constructor(
string n_name,
string n_src, *
string n_tablecatalog, *
string n_schema, *
string n_checkoption, *
string n_definer, *
string n_securitytype,
bool n_updatable)
655 const MysqlSequenceFunction =
"%s(seq_name varchar(40)) returns decimal(14) begin update %s set id = last_insert_id(id + 1) where name = seq_name;
656 return last_insert_id();
680 string sequence_table =
"sqlutil_sequences";
681 string sequence_function =
"sqlutil_nextval";
705 list<string> featuresImpl();
709 string getSchemaName();
713 AbstractSequence makeSequenceImpl(
string name, number start = 1, number increment = 1, *softnumber end, *hash
opts);
718 *AbstractSequence getSequenceImpl(
string name);
723 *AbstractView getViewImpl(
string name);
738 *AbstractFunction getFunctionImpl(
string name);
743 static string makeParameter(hash<auto> row);
748 AbstractFunction getProcedureImpl(
string name);
753 list getDropSchemaSqlImpl(hash schema_hash, *hash opt);
758 list getAlignSqlImpl(hash schema_hash, *hash opt);
789 list<string> listSequencesImpl();
794 list<string> listViewsImpl();
799 string getCreateSqlImpl(list
l);
803 static string getCreateSql(list
l);
891 "qore": Type::Number,
894 "tinyint": (
"qore": Type::Int,
"ai": True,),
895 "smallint": (
"qore": Type::Int,
"ai": True,),
896 "mediumint": (
"qore": Type::Int,
"ai": True,),
897 "int": (
"qore": Type::Int,
"ai": True,),
898 "bigint": (
"qore": Type::Int,
"ai": True,),
899 "float": (
"qore": Type::Float,
"ai": True,),
900 "double": (
"qore": Type::Float,
"ai": True,),
902 "date": (
"qore": Type::Date,),
903 "datetime": (
"qore": Type::Date,),
904 "timestamp": (
"qore": Type::Date,
"size": SZ_OPT,
"size_range": (0, 6),
"default_size": 6,),
905 "time": (
"qore": Type::Date,
"size": SZ_OPT,
"size_range": (0, 6),
"default_size": 6,),
906 "year": (
"qore": Type::Int,),
909 "qore": Type::String,
911 "size_range": (0, 255),
914 "qore": Type::String,
916 "size_range": (0, 65535),
917 "default_size": AbstractColumn::DefaultVarcharSize,
920 "binary": (
"qore": Type::Binary,
"size": SZ_OPT,
"size_range": (0, 255)),
922 "qore": Type::Binary,
924 "size_range": (0, 65535),
928 "tinytext": (
"qore": Type::String,),
929 "text": (
"qore": Type::String,),
930 "mediumtext": (
"qore": Type::String,),
931 "longtext": (
"qore": Type::String,),
933 "tinyblob": (
"qore": Type::Binary,),
934 "blob": (
"qore": Type::Binary,),
935 "mediumblob": (
"qore": Type::Binary,),
936 "longblob": (
"qore": Type::Binary,),
938 "bit": (
"qore": Type::Int,),
965 const MysqlIndexOptions = AbstractTable::IndexOptions;
967 const MysqlConstraintOptions = ...;
970 const MysqlTableCreationOptions = AbstractTable::TableCreationOptions + MysqlConstraintOptions;
972 const MysqlAlignTableOptions = AbstractTable::AlignTableOptions + MysqlTableCreationOptions;
981 "exp": <DataProviderExpressionInfo>{
982 "type": DET_Operator,
985 "desc":
"cast operator",
988 DataProviderSignatureAnyType,
989 DataProviderSignatureStringValueType,
990 DataProviderSignatureOptionalIntValueType,
991 DataProviderSignatureOptionalIntValueType),
993 "return_type": AbstractDataProviderTypeMap.
"any",
995 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
996 string exp0 = info.table.getExpressionArg(\info, role, args[0],
997 AbstractDataProviderTypeMap.
"any");
1000 string sql = sprintf (
"cast (%s as %s", exp0,
name);
1001 if (desc.size == SZ_MAND) {
1002 if (!exists args[1] && !exists desc.size_range)
1003 throw "OPERATOR-ERROR", sprintf (
"cast operator missing size for type %s",
1005 sql += sprintf(
"(%d)", args[1] ?? desc.size_range[1]);
1006 }
else if (desc.size == SZ_NUM && exists args[1]) {
1007 sql += sprintf(
"(%d", args[1]);
1008 sql += exists args[2] ? sprintf(
",%d)", args[2]) :
")";
1009 }
else if (desc.size == SZ_OPT && exists args[1]) {
1010 sql += sprintf(
"(%d)", args[1]);
1016 COP_PREPEND: DefaultExpressionMap{COP_PREPEND} + {
1017 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1018 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1019 AbstractDataProviderTypeMap.
"string");
1020 string exp1 = info.table.getExpressionArg(\info, role, args[1],
1021 AbstractDataProviderTypeMap.
"string");
1022 return sprintf(
"concat(%s, %s)", exp1, exp0);
1025 COP_APPEND: DefaultExpressionMap{COP_APPEND} + {
1026 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1027 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1028 AbstractDataProviderTypeMap.
"string");
1029 string exp1 = info.table.getExpressionArg(\info, role, args[1],
1030 AbstractDataProviderTypeMap.
"string");
1031 return sprintf(
"concat(%s, %s)", exp0, exp1);
1035 "exp": <DataProviderExpressionInfo>{
1036 "type": DET_Operator,
1039 "desc":
"returns the year component of a date as a string (ex: `2022`)",
1042 DataProviderSignatureDateType,
1044 "return_type": AbstractDataProviderTypeMap.
"string",
1046 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1047 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1048 AbstractDataProviderTypeMap.
"date");
1049 return sprintf(
"date_format(%s, '%%Y')", exp0);
1053 "exp": <DataProviderExpressionInfo>{
1054 "type": DET_Operator,
1055 "label": COP_YEAR_MONTH,
1056 "name": COP_YEAR_MONTH,
1057 "desc":
"returns the year and month components of a date as a string (ex: `2022-06`)",
1058 "symbol": COP_YEAR_MONTH,
1060 DataProviderSignatureDateType,
1062 "return_type": AbstractDataProviderTypeMap.
"string",
1064 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1065 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1066 AbstractDataProviderTypeMap.
"date");
1067 return sprintf(
"date_format(%s, '%%Y-%%m')", exp0);
1071 "exp": <DataProviderExpressionInfo>{
1072 "type": DET_Operator,
1073 "label": COP_YEAR_DAY,
1074 "name": COP_YEAR_DAY,
1075 "desc":
"returns the year, month, and day components of a date as a string (ex: `2022-06-29`)",
1076 "symbol": COP_YEAR_DAY,
1078 DataProviderSignatureDateType,
1080 "return_type": AbstractDataProviderTypeMap.
"string",
1082 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1083 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1084 AbstractDataProviderTypeMap.
"date");
1085 return sprintf(
"date_format(%s, '%%Y-%%m-%%e')", exp0);
1089 "exp": <DataProviderExpressionInfo>{
1090 "type": DET_Operator,
1091 "label": COP_YEAR_HOUR,
1092 "name": COP_YEAR_HOUR,
1093 "desc":
"returns the year, month, day, and hour components of a date as a string "
1094 "(ex: `2022-06-29 15`)",
1095 "symbol": COP_YEAR_HOUR,
1097 DataProviderSignatureDateType,
1099 "return_type": AbstractDataProviderTypeMap.
"string",
1101 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1102 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1103 AbstractDataProviderTypeMap.
"date");
1104 return sprintf(
"date_format(%s, '%%Y-%%m-%%e %%k')", exp0);
1108 "exp": <DataProviderExpressionInfo>{
1109 "type": DET_Operator,
1110 "label": COP_TRUNC_DATE,
1111 "name": COP_TRUNC_DATE,
1112 "desc":
"truncates the given date to the given resolution; args: date, string code: Y: year, "
1113 "M: month, D: day, H: hour, m: minute, S: second",
1114 "symbol": COP_TRUNC_DATE,
1116 DataProviderSignatureDateType,
1117 DataProviderSignatureStringValueType,
1119 "return_type": AbstractDataProviderTypeMap.
"date",
1121 "code":
string sub(reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1124 throw "COP-TRUNC-DATE-ERROR", sprintf(
"unknown date truncation format argument %y; "
1125 "supported date format arguments: %y", args[1], keys
MysqlTruncDate);
1127 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1128 AbstractDataProviderTypeMap.
"date");
1129 return sprintf(
"cast(date_format(%s, %s) as datetime)", exp0, str);
1137 "arg": Type::String,
1139 "code":
string sub (
string cve,
string arg) {
1140 return sprintf(
"concat(%s, %s)", arg, cve);
1144 "arg": Type::String,
1146 "code":
string sub (
string cve,
string arg) {
1147 return sprintf(
"concat(%s, %s)", cve, arg);
1154 DT_YEAR :
"'%Y-01-01 00:00:00'",
1155 DT_MONTH :
"'%Y-%m-01 00:00:00'",
1156 DT_DAY :
"'%Y-%m-%d 00:00:00'",
1157 DT_HOUR :
"'%Y-%m-%d %H:00:00'",
1158 DT_MINUTE:
"'%Y-%m-%d %H:%i:00'",
1159 DT_SECOND:
"'%Y-%m-%d %H:%i:%s'",
1164 string engine =
"innodb";
1166 string table_encoding;
1186 hash getTableCreationOptions();
1191 hash getTableDescriptionHashOptions();
1196 hash getColumnDescOptions();
1201 hash getIndexOptions();
1206 hash getConstraintOptions();
1211 hash getAlignTableOptions();
1222 bool checkExistenceImpl();
1227 Columns describeImpl();
1232 *
string getCreatePrimaryKeySqlUnlocked(*hash opt,
bool cache = True);
1242 Indexes getIndexesImpl();
1247 ForeignConstraints getForeignConstraintsImpl(*hash
opts);
1252 Constraints getConstraintsImpl();
1257 Triggers getTriggersImpl();
1261 string getCreateTableSqlImpl(*hash opt);
1269 *list getCreateMiscSqlImpl(*hash opt,
bool cache);
1274 *list getAlignSqlImpl(AbstractTable table, *hash opt);
1279 string getCreateSqlImpl(list
l);
1284 string getRenameSqlImpl(
string new_name);
1289 AbstractColumn addColumnImpl(
string cname, hash<auto> opt,
bool nullable = True);
1294 setPrimaryKeyUnlocked(AbstractPrimaryKey pk);
1299 addColumnToTableUnlocked(AbstractColumn c);
1304 AbstractPrimaryKey addPrimaryKeyImpl(
string cname, hash ch, *hash opt);
1309 AbstractIndex addIndexImpl(
string iname,
bool enabled, hash ch, *hash opt);
1314 AbstractForeignConstraint addForeignConstraintImpl(
string cname, hash ch,
string table, hash tch, *hash opt);
1319 AbstractCheckConstraint addCheckConstraintImpl(
string cname,
string src, *hash opt);
1324 AbstractUniqueConstraint addUniqueConstraintImpl(
string cname, hash ch, *hash opt);
1329 AbstractTrigger addTriggerImpl(
string tname,
string src, *hash opt);
1334 bool tryInsertImpl(
string sql, hash<auto> row);
1347 hash getQoreTypeMapImpl();
1352 hash getTypeMapImpl();
1398 preSetupTableImpl(reference<hash> desc, *hash opt);
1403 setupTableImpl(hash desc, *hash opt);
1444 *hash<auto> doReturningImpl(hash<auto> opt, reference<string> sql, list<auto> args);
1449 list<auto> getGroupOrderByListUnlocked(hash<QueryInfo> info,
string key, list<auto> coll);
represents a MySQL-specific column
Definition: MysqlSqlUtil.qm.dox.h:287
softlist< string > getAddColumnSql(AbstractTable t)
returns a list of sql strings that can be used to add the column to an existing table
softlist< string > getModifySqlImpl(AbstractTable t, AbstractColumn col, *hash opt)
returns a list of sql strings that can be used to modify the column to the new definition
string getCreateSql(AbstractTable t)
returns an sql string that can be used to add the column to a table
constructor()
empty constructor for subclasses
string getRenameSql(AbstractTable t, string new_name)
returns a string that can be used to rename the column
int byte_size
byte size of the column
Definition: MysqlSqlUtil.qm.dox.h:291
string getDdlName(string name)
returns the column name with quoting in case the column name is a reserved word
bool equalImpl(AbstractColumn c)
returns True if the argument is equal to the current object, False if not
provides the MySQL-specific implementation of the AbstractDatabase interface
Definition: MysqlSqlUtil.qm.dox.h:637
bool rebuildIndexImpl(string name, *hash options)
rebuild index implementation. See SqlUtil::AbstractDatabase::rebuildIndex()
const MysqlSequenceTable
MySQL sequence emulation table.
Definition: MysqlSqlUtil.qm.dox.h:651
const MysqlComputeStatisticsOptions
Options for computeStatistics()
Definition: MysqlSqlUtil.qm.dox.h:660
const MysqlSchemaDescriptionOptions
MySQL-specific schema description keys.
Definition: MysqlSqlUtil.qm.dox.h:645
bool requiresScale()
Returns True if the driver requires a scale to support decimal values in numeric or decimal columns.
Datasource seqds
separate datasource dedicated for extern sequence implementation with autonomous transactions
Definition: MysqlSqlUtil.qm.dox.h:678
list< string > listProceduresImpl()
returns a list of string procedure names in the database
int getMaximumPrecision()
Returns the maximum precision for numeric or decimal columns.
softint getNextSequenceValueImpl(string name)
returns the next value in the given sequence
const MysqlMaxPrecision
Maximum precision.
Definition: MysqlSqlUtil.qm.dox.h:672
bool supportsPackagesImpl()
returns True if the database supports packages
hash getSchemaDescriptionOptions()
returns driver-specific options to the base abstract class
int getPhysicalSizeImpl()
SqlUtil::AbstractDatabase::getPhysicalSize()
const MysqlReclaimSpaceOptions
Options for reclaimSpace()
Definition: MysqlSqlUtil.qm.dox.h:664
const MysqlReservedWords
hash of reserved words
Definition: MysqlSqlUtil.qm.dox.h:668
computeStatisticsImpl(*hash options)
compute statistics implementation. See SqlUtil::AbstractDatabase::computeStatistics()
hash getDatabaseOptions()
returns driver-specific options to the base abstract class
const MysqlSequenceFunction
MySQL sequence function.
Definition: MysqlSqlUtil.qm.dox.h:655
reclaimSpaceImpl(*hash options)
reclaim space implementation. See SqlUtil::AbstractDatabase::reclaimSpace()
softint getCurrentSequenceValueImpl(string name)
returns the last value issued for the given sequence in the current session
list< string > listFunctionsImpl()
returns a list of string function names in the database
hash getReclaimSpaceOptions()
returns driver-specific options to the base abstract class
bool supportsTypesImpl()
returns True if the database supports named types
list< string > listTablesImpl()
returns a list of string table names in the database
hash getComputeStatisticsOptions()
returns driver-specific options to the base abstract class
bool supportsSequencesImpl()
returns True since we have a workaround implementation for sequences in MySQL
const MysqlOptions
MySQL-specific options.
Definition: MysqlSqlUtil.qm.dox.h:641
const MysqlDatabaseOptions
MySQL-specific database options.
Definition: MysqlSqlUtil.qm.dox.h:648
represents a MySQL-specific foreign constraint
Definition: MysqlSqlUtil.qm.dox.h:262
string getDropSql(string table_name)
returns a string that can be used to drop the foreign constraint from the database
softlist getRenameSql(string table_name, string new_name)
returns a string that drops the constraint and re-adds it, since MySQL does not support renaming cons...
represents a MySQL-specific function
Definition: MysqlSqlUtil.qm.dox.h:545
softlist getCreateSql(*hash opt)
returns a string that can be used to create the function in the database
bool equalImpl(AbstractFunctionBase t)
returns True if the argument is equal to the current object, False if not
string getDropSql(*hash opt)
returns a string that can be used to drop the function from the database
softlist getRenameSql(string new_name, *hash opt)
returns a string that can be used to rename the function in the database
represents a MySQL-specific index
Definition: MysqlSqlUtil.qm.dox.h:233
constructor(string n_name, bool n_unique, hash n_cols, string n_type='BTREE')
creates the object from the arguments
string getDropSql(string table_name)
returns a string that can be used to drop the index from the table
string getCreateSql(string table_name, *hash opt)
returns a string that can be used to create the index in the database
string getRenameSql(string table_name, string new_name)
returns a string that can be used to rename the index in the database; hwoever mysql does not support...
bool equalImpl(AbstractIndex ix)
returns True if the argument is equal to the current index, False if not
the data type for DECIMAL columns
Definition: MysqlSqlUtil.qm.dox.h:224
constructor(string native_type, bool nullable, *hash< auto > options)
creates the object
represents a MySQL-specific numeric column
Definition: MysqlSqlUtil.qm.dox.h:365
bool equalImpl(AbstractColumn c)
returns True if the argument is equal to the current object, False if not
deserializeMembers(hash< auto > members)
deserializes the hash to a replica of the original object
represents a MySQL-specific primary key constraint
Definition: MysqlSqlUtil.qm.dox.h:473
MysqlColumn memberGate(string k)
returns the MysqlColumn value of the given key if it exists, otherwise throws a KEY-ERROR exception
string getDropSql(string table_name)
returns a string that can be used to drop the constraint from the database
bool supportsName()
returns False since primary key constraints in MySQL have no name
softlist getRenameSql(string table_name, string new_name)
primary keys have no name in MySQL so this method returns an empty list
MySQL savepoint helper.
Definition: MysqlSqlUtil.qm.dox.h:197
deleteSavepointImpl()
Deletes the savepoint.
createSavepointImpl()
Creates the savepoint.
constructor(AbstractDatasource ds, *string savepoint)
Creates the object.
rollbackImpl()
Rolls back to the savepoint.
class for MySQL sequences based on a sequence table and autonomous transactions
Definition: MysqlSqlUtil.qm.dox.h:576
string getCreateSql(*hash opt)
returns a string that can be used to create the sequence in the database
softlist getRenameSql(string new_name, *hash opt)
returns a string that can be used to rename the sequence in the database
string getDropSql(*hash opt)
returns a string that can be used to drop the sequence from the database
constructor(string n_table_name, string n_name, number n_start=1, number n_increment=1, *softnumber n_end)
creates the object from the arguments
provides the MySQL-specific implementation of the AbstractTable interface
Definition: MysqlSqlUtil.qm.dox.h:885
hash< auto > getExpressionMap()
Returns the expression map for MySQL.
bool isDuplicateRowErrorImpl(hash< ExceptionInfo > ex)
Returns True if the exception was raised because of a duplicate row / key error.
hash< auto > getWhereOperatorMap()
returns the "where" operator map for MySQL
bool hasReturningImpl()
returns True if the current driver supports the "returning" clause in insert statements
list getColumnSqlNames(softlist cols)
returns a list of column names for use in SQL strings; subclasses can process the argument list in ca...
string getColumnSqlName(string col)
returns the column name for use in SQL strings; subclasses can return a special string in case the co...
const QoreTypeMap
maps qore type names to MySQL type names
Definition: MysqlSqlUtil.qm.dox.h:942
bool constraintsLinkedToIndexesImpl()
returns True if the database links constraints to indexes (ie dropping the constraint drops the index...
doSelectLimitOnlyUnlockedImpl(reference< hash< QueryInfo > > info, reference< string > sql)
processes a string for use in SQL select statements when there is a "limit" argument,...
const MysqlTypeMap
maps mysql type names to type configurations
Definition: MysqlSqlUtil.qm.dox.h:889
bool supportsTablespacesImpl()
returns True if the database support tablespaces
AbstractDataProviderType getNumericTypeImpl(string native_type, bool nullable, *hash< auto > options)
returns the type for number / numeric columns for the database so that data conversions can be handle...
hash getColumnOperatorMapImpl()
returns the column operator map for this object
bool asteriskRequiresPrefix()
returns True if the database requires a wildcard "*" to be prefixed with the table name when it appea...
string getSqlName()
returns the name of the table to be used in SQL (with a possible qualifiers for schema,...
static *string getSqlValue(auto v)
returns a string for use in SQL queries representing the DB-specific value of the argument
bool hasArrayBind()
returns False because the mysql driver does not support array binds / bulk DML operations
const MysqlOpMap
where operator specializations for MySQL
Definition: MysqlSqlUtil.qm.dox.h:1135
const MysqlTableDescriptionHashOptions
extends SqlUtil::AbstractTable::TableDescriptionHashOptions
Definition: MysqlSqlUtil.qm.dox.h:953
const MysqlExpressionMap
MySQL Expression map.
Definition: MysqlSqlUtil.qm.dox.h:979
const MysqlTruncDate
Map SqlUtil::cop_trunc_date() constants for internal masks.
Definition: MysqlSqlUtil.qm.dox.h:1153
const MysqlCopMap
column operator specializations for MySQL
Definition: MysqlSqlUtil.qm.dox.h:975
const MysqlColumnDescOptions
extends SqlUtil::AbstractTable::ColumnDescOptions with MySQL-specific values
Definition: MysqlSqlUtil.qm.dox.h:962
static *string getSqlValueIntern(auto v)
returns a string for use in SQL queries representing the DB-specific value of the argument; returns N...
copyImpl(AbstractTable old)
db-specific copy actions
AbstractSavepointHelper getSavepointHelperImpl(*string savepoint)
get DB-specific savepoint helper
bool uniqueIndexCreatesConstraintImpl()
returns True if the database automatically creates a unique constraint when a unique index is created...
*string getSqlValueImpl(auto v)
returns a string for use in SQL queries representing the DB-specific value of the argument; returns N...
doSelectOrderByWithOffsetSqlUnlockedImpl(reference< hash< QueryInfo > > info, reference< string > sql, list< auto > coll)
processes a string for use in SQL select statements when there is an "order by" and "offset" argument
represents a MySQL-specific trigger
Definition: MysqlSqlUtil.qm.dox.h:518
bool equalImpl(AbstractFunctionBase t)
returns True if the argument is equal to the current object, False if not
softlist getCreateSql(string table_name, *hash opt)
returns a string that can be used to create the trigger in the database
constructor(string n, string n_src)
creates the object and sets its name and the trigger source
softlist getDropSql(string table_name)
returns a string that can be used to drop the trigger from the database
softlist getRenameSql(string table_name, string new_name)
returns a string that can be used to rename the trigger in the database
represents a MySQL view
Definition: MysqlSqlUtil.qm.dox.h:607
constructor(string n_name, string n_src, *string n_tablecatalog, *string n_schema, *string n_checkoption, *string n_definer, *string n_securitytype, bool n_updatable)
creates the object from the arguments
softlist getRenameSql(string new_name, *hash opt)
returns a string that can be used to rename the view in the database
string getCreateSql(*hash opt)
returns a string that can be used to create the view in the database
*string tablecatalog
table catalog value
Definition: MysqlSqlUtil.qm.dox.h:611
*string definer
dafiner clause
Definition: MysqlSqlUtil.qm.dox.h:615
*string checkoption
checkoption clause
Definition: MysqlSqlUtil.qm.dox.h:613
*string securitytype
security type value
Definition: MysqlSqlUtil.qm.dox.h:617
cache(*hash< auto > opts)
the MysqlSqlUtil namespace contains all the objects in the MysqlSqlUtil module
Definition: MysqlSqlUtil.qm.dox.h:184
MysqlDatabase get_database(AbstractDatasource nds, *hash opts)
returns a MysqlDatabase object corresponding to the arguments
MysqlTable get_table(AbstractDatasource nds, string nname, *hash opts)
returns a MysqlTable object corresponding to the arguments