193 parse_schema_name(
string nname, reference<*string> schema, reference<string> name);
240 constructor(
string n_name,
bool n_unique, hash n_cols,
string n_type =
'BTREE') ;
266 constructor(
string n, Columns c, ForeignConstraintTarget t) ;
269 string getCreateSql(
string table_name, *hash opt);
276 string getCreateSql(
string name,
string table_name, *hash opt);
279 string getAddSql(
string name,
string table_name, *hash opt);
300 constructor(
string n,
string nt, *
string qt,
int sz,
bool nul, *
string dv, *
string cm, *softint bs,
377 const AUTO_INCREMENT_VALID_TYPES = {
387 "double precision": True,
392 constructor(
string n,
string nt, *
string qt,
int sz,
bool nul, *
string dv, *
string cm, softint bs,
393 softint
scale,
bool n_unsigned = False,
bool n_auto_increment = False,
bool n_pk = False)
404 validateConstructor();
408 string getNativeTypeString();
424 bool setIndexBase(
string ix);
432 getIndexSql(reference<string> sql,
string name, *hash opts);
439 constructor(
string n, hash n_cols) ;
458 MysqlColumn memberGate(
string k);
461 string getCreateSql(
string table_name, *hash opts);
464 list getRenameSql(
string table_name,
string new_name);
467 string getCreateSql(
string name,
string table_name, *hash opts);
471 string getDropSql(
string table_name);
482 constructor(*hash c) ;
504 string getCreateSql(
string table_name, *hash opts);
588 constructor(
string n_table_name,
string n_name, number n_start = 1, number n_increment = 1, *softnumber n_end) ;
625 *
string n_checkoption, *
string n_definer,
626 *
string n_securitytype,
bool n_updatable)
663 update %s set id = last_insert_id(id + 1) where name = seq_name;
664 return last_insert_id();
688 string sequence_table =
"sqlutil_sequences";
689 string sequence_function =
"sqlutil_nextval";
713 list<string> featuresImpl();
717 string getSchemaName();
721 AbstractSequence makeSequenceImpl(
string name, number start = 1, number increment = 1, *softnumber end, *hash
opts);
726 *AbstractSequence getSequenceImpl(
string name);
731 *AbstractView getViewImpl(
string name);
746 *AbstractFunction getFunctionImpl(
string name);
751 static string makeParameter(hash<auto> row);
756 AbstractFunction getProcedureImpl(
string name);
761 list getDropSchemaSqlImpl(hash schema_hash, *hash opt);
766 list getAlignSqlImpl(hash schema_hash, *hash opt);
797 list<string> listSequencesImpl();
802 list<string> listViewsImpl();
807 string getCreateSqlImpl(list
l);
811 static string getCreateSql(list
l);
899 "qore": Type::Number,
902 "tinyint": (
"qore": Type::Int,
"ai": True,),
903 "smallint": (
"qore": Type::Int,
"ai": True,),
904 "mediumint": (
"qore": Type::Int,
"ai": True,),
905 "int": (
"qore": Type::Int,
"ai": True,),
906 "bigint": (
"qore": Type::Int,
"ai": True,),
907 "float": (
"qore": Type::Float,
"ai": True,),
908 "double": (
"qore": Type::Float,
"ai": True,),
910 "date": (
"qore": Type::Date,),
911 "datetime": (
"qore": Type::Date,),
912 "timestamp": (
"qore": Type::Date,
"size": SZ_OPT,
"size_range": (0, 6),
"default_size": 6,),
913 "time": (
"qore": Type::Date,
"size": SZ_OPT,
"size_range": (0, 6),
"default_size": 6,),
914 "year": (
"qore": Type::Int,),
917 "qore": Type::String,
919 "size_range": (0, 255),
922 "qore": Type::String,
924 "size_range": (0, 65535),
925 "default_size": AbstractColumn::DefaultVarcharSize,
928 "binary": (
"qore": Type::Binary,
"size": SZ_OPT,
"size_range": (0, 255)),
930 "qore": Type::Binary,
932 "size_range": (0, 65535),
936 "tinytext": (
"qore": Type::String,),
937 "text": (
"qore": Type::String,),
938 "mediumtext": (
"qore": Type::String,),
939 "longtext": (
"qore": Type::String,),
941 "tinyblob": (
"qore": Type::Binary,),
942 "blob": (
"qore": Type::Binary,),
943 "mediumblob": (
"qore": Type::Binary,),
944 "longblob": (
"qore": Type::Binary,),
946 "bit": (
"qore": Type::Int,),
973 const MysqlIndexOptions = AbstractTable::IndexOptions;
975 const MysqlConstraintOptions = ...;
978 const MysqlTableCreationOptions = AbstractTable::TableCreationOptions + MysqlConstraintOptions;
980 const MysqlAlignTableOptions = AbstractTable::AlignTableOptions + MysqlTableCreationOptions;
989 "exp": <DataProviderExpressionInfo>{
990 "type": DET_Operator,
993 "desc":
"cast operator",
996 DataProviderSignatureAnyType,
997 DataProviderSignatureStringValueType,
998 DataProviderSignatureOptionalIntValueType,
999 DataProviderSignatureOptionalIntValueType),
1001 "return_type": AbstractDataProviderTypeMap.
"any",
1003 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1004 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1005 AbstractDataProviderTypeMap.
"any");
1008 string sql = sprintf (
"cast (%s as %s", exp0,
name);
1009 if (desc.size == SZ_MAND) {
1010 if (!exists args[1] && !exists desc.size_range)
1011 throw "OPERATOR-ERROR", sprintf (
"cast operator missing size for type %s",
1013 sql += sprintf(
"(%d)", args[1] ?? desc.size_range[1]);
1014 }
else if (desc.size == SZ_NUM && exists args[1]) {
1015 sql += sprintf(
"(%d", args[1]);
1016 sql += exists args[2] ? sprintf(
",%d)", args[2]) :
")";
1017 }
else if (desc.size == SZ_OPT && exists args[1]) {
1018 sql += sprintf(
"(%d)", args[1]);
1024 COP_PREPEND: DefaultExpressionMap{COP_PREPEND} + {
1025 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1026 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1027 AbstractDataProviderTypeMap.
"string");
1028 string exp1 = info.table.getExpressionArg(\info, role, args[1],
1029 AbstractDataProviderTypeMap.
"string");
1030 return sprintf(
"concat(%s, %s)", exp1, exp0);
1033 COP_APPEND: DefaultExpressionMap{COP_APPEND} + {
1034 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1035 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1036 AbstractDataProviderTypeMap.
"string");
1037 string exp1 = info.table.getExpressionArg(\info, role, args[1],
1038 AbstractDataProviderTypeMap.
"string");
1039 return sprintf(
"concat(%s, %s)", exp0, exp1);
1043 "exp": <DataProviderExpressionInfo>{
1044 "type": DET_Operator,
1047 "desc":
"returns the year component of a date as a string (ex: `2022`)",
1050 DataProviderSignatureDateType,
1052 "return_type": AbstractDataProviderTypeMap.
"string",
1054 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1055 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1056 AbstractDataProviderTypeMap.
"date");
1057 return sprintf(
"date_format(%s, '%%Y')", exp0);
1061 "exp": <DataProviderExpressionInfo>{
1062 "type": DET_Operator,
1063 "label": COP_YEAR_MONTH,
1064 "name": COP_YEAR_MONTH,
1065 "desc":
"returns the year and month components of a date as a string (ex: `2022-06`)",
1066 "symbol": COP_YEAR_MONTH,
1068 DataProviderSignatureDateType,
1070 "return_type": AbstractDataProviderTypeMap.
"string",
1072 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1073 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1074 AbstractDataProviderTypeMap.
"date");
1075 return sprintf(
"date_format(%s, '%%Y-%%m')", exp0);
1079 "exp": <DataProviderExpressionInfo>{
1080 "type": DET_Operator,
1081 "label": COP_YEAR_DAY,
1082 "name": COP_YEAR_DAY,
1083 "desc":
"returns the year, month, and day components of a date as a string (ex: `2022-06-29`)",
1084 "symbol": COP_YEAR_DAY,
1086 DataProviderSignatureDateType,
1088 "return_type": AbstractDataProviderTypeMap.
"string",
1090 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1091 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1092 AbstractDataProviderTypeMap.
"date");
1093 return sprintf(
"date_format(%s, '%%Y-%%m-%%e')", exp0);
1097 "exp": <DataProviderExpressionInfo>{
1098 "type": DET_Operator,
1099 "label": COP_YEAR_HOUR,
1100 "name": COP_YEAR_HOUR,
1101 "desc":
"returns the year, month, day, and hour components of a date as a string "
1102 "(ex: `2022-06-29 15`)",
1103 "symbol": COP_YEAR_HOUR,
1105 DataProviderSignatureDateType,
1107 "return_type": AbstractDataProviderTypeMap.
"string",
1109 "code":
string sub (reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1110 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1111 AbstractDataProviderTypeMap.
"date");
1112 return sprintf(
"date_format(%s, '%%Y-%%m-%%e %%k')", exp0);
1116 "exp": <DataProviderExpressionInfo>{
1117 "type": DET_Operator,
1118 "label": COP_TRUNC_DATE,
1119 "name": COP_TRUNC_DATE,
1120 "desc":
"truncates the given date to the given resolution; args: date, string code: Y: year, "
1121 "M: month, D: day, H: hour, m: minute, S: second",
1122 "symbol": COP_TRUNC_DATE,
1124 DataProviderSignatureDateType,
1125 DataProviderSignatureStringValueType,
1127 "return_type": AbstractDataProviderTypeMap.
"date",
1129 "code":
string sub(reference<hash<QueryInfo>> info,
int role, list<auto> args) {
1132 throw "COP-TRUNC-DATE-ERROR", sprintf(
"unknown date truncation format argument %y; "
1133 "supported date format arguments: %y", args[1], keys
MysqlTruncDate);
1135 string exp0 = info.table.getExpressionArg(\info, role, args[0],
1136 AbstractDataProviderTypeMap.
"date");
1137 return sprintf(
"cast(date_format(%s, %s) as datetime)", exp0, str);
1145 "arg": Type::String,
1147 "code":
string sub (
string cve,
string arg) {
1148 return sprintf(
"concat(%s, %s)", arg, cve);
1152 "arg": Type::String,
1154 "code":
string sub (
string cve,
string arg) {
1155 return sprintf(
"concat(%s, %s)", cve, arg);
1162 DT_YEAR :
"'%Y-01-01 00:00:00'",
1163 DT_MONTH :
"'%Y-%m-01 00:00:00'",
1164 DT_DAY :
"'%Y-%m-%d 00:00:00'",
1165 DT_HOUR :
"'%Y-%m-%d %H:00:00'",
1166 DT_MINUTE:
"'%Y-%m-%d %H:%i:00'",
1167 DT_SECOND:
"'%Y-%m-%d %H:%i:%s'",
1172 string engine =
"innodb";
1174 string table_encoding;
1194 hash getTableCreationOptions();
1199 hash getTableDescriptionHashOptions();
1204 hash getColumnDescOptions();
1209 hash getIndexOptions();
1214 hash getConstraintOptions();
1219 hash getAlignTableOptions();
1230 bool checkExistenceImpl();
1235 Columns describeImpl();
1240 *
string getCreatePrimaryKeySqlUnlocked(*hash opt,
bool cache = True);
1250 Indexes getIndexesImpl();
1255 ForeignConstraints getForeignConstraintsImpl(*hash
opts);
1260 Constraints getConstraintsImpl();
1265 Triggers getTriggersImpl();
1269 string getCreateTableSqlImpl(*hash opt);
1277 *list getCreateMiscSqlImpl(*hash opt,
bool cache);
1282 *list getAlignSqlImpl(AbstractTable table, *hash opt);
1287 string getCreateSqlImpl(list
l);
1292 string getRenameSqlImpl(
string new_name);
1297 AbstractColumn addColumnImpl(
string cname, hash<auto> opt,
bool nullable = True);
1302 setPrimaryKeyUnlocked(AbstractPrimaryKey pk);
1307 addColumnToTableUnlocked(AbstractColumn c);
1312 AbstractPrimaryKey addPrimaryKeyImpl(
string cname, hash ch, *hash opt);
1317 AbstractIndex addIndexImpl(
string iname,
bool enabled, hash ch, *hash opt);
1322 AbstractForeignConstraint addForeignConstraintImpl(
string cname, hash ch,
string table, hash tch, *hash opt);
1327 AbstractCheckConstraint addCheckConstraintImpl(
string cname,
string src, *hash opt);
1332 AbstractUniqueConstraint addUniqueConstraintImpl(
string cname, hash ch, *hash opt);
1337 AbstractTrigger addTriggerImpl(
string tname,
string src, *hash opt);
1342 bool tryInsertImpl(
string sql, hash<auto> row);
1355 hash getQoreTypeMapImpl();
1360 hash getTypeMapImpl();
1406 preSetupTableImpl(reference<hash> desc, *hash opt);
1411 setupTableImpl(hash desc, *hash opt);
1442 doSelectOrderBySqlUnlocked(info, \sql, coll);
1443 if (info.query_hash.limit);
1446 if (info.query_hash.offset);
1457 *hash<auto> doReturningImpl(hash<auto> opt, reference<string> sql, list<auto> args);
1462 list<auto> getGroupOrderByListUnlocked(hash<QueryInfo> info,
string key, list<auto> coll);
represents a MySQL-specific column
Definition: MysqlSqlUtil.qm.dox.h:288
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:292
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:643
bool rebuildIndexImpl(string name, *hash options)
rebuild index implementation. See SqlUtil::AbstractDatabase::rebuildIndex()
const MysqlSequenceTable
MySQL sequence emulation table.
Definition: MysqlSqlUtil.qm.dox.h:657
const MysqlComputeStatisticsOptions
Options for computeStatistics()
Definition: MysqlSqlUtil.qm.dox.h:668
const MysqlSchemaDescriptionOptions
MySQL-specific schema description keys.
Definition: MysqlSqlUtil.qm.dox.h:651
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:686
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:680
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:672
const MysqlReservedWords
hash of reserved words
Definition: MysqlSqlUtil.qm.dox.h:676
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:661
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:647
const MysqlDatabaseOptions
MySQL-specific database options.
Definition: MysqlSqlUtil.qm.dox.h:654
represents a MySQL-specific foreign constraint
Definition: MysqlSqlUtil.qm.dox.h:263
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:548
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:234
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:367
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:476
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:579
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:893
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:950
private 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
Definition: MysqlSqlUtil.qm.dox.h:1440
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:897
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:1143
const MysqlTableDescriptionHashOptions
extends SqlUtil::AbstractTable::TableDescriptionHashOptions
Definition: MysqlSqlUtil.qm.dox.h:961
const MysqlExpressionMap
MySQL Expression map.
Definition: MysqlSqlUtil.qm.dox.h:987
const MysqlTruncDate
Map SqlUtil::cop_trunc_date() constants for internal masks.
Definition: MysqlSqlUtil.qm.dox.h:1161
const MysqlCopMap
column operator specializations for MySQL
Definition: MysqlSqlUtil.qm.dox.h:983
const MysqlColumnDescOptions
extends SqlUtil::AbstractTable::ColumnDescOptions with MySQL-specific values
Definition: MysqlSqlUtil.qm.dox.h:970
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...
represents a MySQL-specific trigger
Definition: MysqlSqlUtil.qm.dox.h:521
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:610
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:614
*string definer
dafiner clause
Definition: MysqlSqlUtil.qm.dox.h:618
*string checkoption
checkoption clause
Definition: MysqlSqlUtil.qm.dox.h:616
*string securitytype
security type value
Definition: MysqlSqlUtil.qm.dox.h:620
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