The MySQLDialect type exposes the following members.
Constructors
Name | Description | |
---|---|---|
MySQLDialect | Initializes a new instance of the MySQLDialect class |
Methods
Name | Description | |
---|---|---|
AddIdentifierOutParameterToInsert | (Inherited from Dialect.) | |
AppendIdentitySelectToInsert |
Provided we SupportsInsertSelectIdentity, then attch the
"select identity" clause to the insert statement.
(Inherited from Dialect.) | |
AppendLockHint |
Some dialects support an alternative means to SELECT FOR UPDATE,
whereby a "lock hint" is appends to the table name in the from clause.
(Inherited from Dialect.) | |
ApplyLocksToSql |
Modifies the given SQL by applying the appropriate updates for the specified
lock modes and key columns.
(Inherited from Dialect.) | |
BuildSQLExceptionConverter |
Build an instance of the ISQLExceptionConverter preferred by this dialect for
converting DbException into NHibernate's ADOException hierarchy.
(Inherited from Dialect.) | |
CreateCaseFragment |
Create a CaseFragment strategy responsible
for handling this dialect's variations in how CASE statements are
handled.
(Inherited from Dialect.) | |
CreateOuterJoinFragment |
Create a JoinFragment strategy responsible
for handling this dialect's variations in how joins are handled.
(Inherited from Dialect.) | |
DropTemporaryTableAfterUse | Do we need to drop the temporary table after use? (Inherited from Dialect.) | |
Equals | (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GenerateTemporaryTableName | Generate a temporary table name given the bas table. (Inherited from Dialect.) | |
GetAddForeignKeyConstraintString | (Overrides Dialect..::..GetAddForeignKeyConstraintString(String, array<String>[]()[][], String, array<String>[]()[][], Boolean).) | |
GetAddPrimaryKeyConstraintString |
The syntax used to add a primary key constraint to a table
(Inherited from Dialect.) | |
GetCastTypeName |
Get the name of the database type appropriate for casting operations
(via the CAST() SQL function) for the given SqlType typecode.
(Overrides Dialect..::..GetCastTypeName(SqlType).) | |
GetColumnComment | (Inherited from Dialect.) | |
GetCreateSequenceString(String) |
Typically dialects which support sequences can create a sequence
with a single command.
(Inherited from Dialect.) | |
GetCreateSequenceString(String, Int32, Int32) |
Overloaded form of GetCreateSequenceString(String), additionally
taking the initial value and increment size to be applied to the sequence
definition.
(Inherited from Dialect.) | |
GetCreateSequenceStrings |
An optional multi-line form for databases which SupportsPooledSequences.
(Inherited from Dialect.) | |
GetDataBaseSchema | (Overrides Dialect..::..GetDataBaseSchema(DbConnection).) | |
GetDropForeignKeyConstraintString |
Create the SQL string to drop a foreign key constraint.
(Overrides Dialect..::..GetDropForeignKeyConstraintString(String).) | |
GetDropIndexConstraintString |
Create the SQL string to drop an index.
(Overrides Dialect..::..GetDropIndexConstraintString(String).) | |
GetDropPrimaryKeyConstraintString |
Create the SQL string to drop a primary key constraint.
(Overrides Dialect..::..GetDropPrimaryKeyConstraintString(String).) | |
GetDropSequenceString |
Typically dialects which support sequences can drop a sequence
with a single command.
(Inherited from Dialect.) | |
GetDropSequenceStrings |
The multiline script used to drop a sequence.
(Inherited from Dialect.) | |
GetDropTableString |
Return SQL needed to drop the named table. May (and should) use
some form of "if exists" clause, and cascade constraints.
(Inherited from Dialect.) | |
GetForUpdateNowaitString |
Get the FOR UPDATE OF column_list NOWAIT fragment appropriate
for this dialect given the aliases of the columns to be write locked.
(Inherited from Dialect.) | |
GetForUpdateString(String) |
Get the FOR UPDATE OF column_list fragment appropriate for this
dialect given the aliases of the columns to be write locked.
(Inherited from Dialect.) | |
GetForUpdateString(LockMode) |
Given a lock mode, determine the appropriate for update fragment to use.
(Inherited from Dialect.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetHibernateTypeName(DbType) | (Inherited from Dialect.) | |
GetHibernateTypeName(DbType, Int32, Int32, Int32) |
Get the name of the Hibernate IType associated
with the given DbType typecode with the given storage
specification parameters.
(Inherited from Dialect.) | |
GetIdentityColumnString |
The syntax used during DDL to define a column as being an IDENTITY of
a particular type.
(Inherited from Dialect.) | |
GetIdentitySelectString |
Get the select command to use to retrieve the last generated IDENTITY
value for a particular table
(Inherited from Dialect.) | |
GetIfExistsDropConstraint |
The syntax that is used to check if a constraint exists before dropping it
(Inherited from Dialect.) | |
GetIfExistsDropConstraintEnd |
The syntax that is used to close the if for a constraint exists check, used
for dialects that requires begin/end for ifs
(Inherited from Dialect.) | |
GetIfNotExistsCreateConstraint |
The syntax that is used to check if a constraint does not exists before creating it
(Inherited from Dialect.) | |
GetIfNotExistsCreateConstraintEnd |
The syntax that is used to close the if for a constraint exists check, used
for dialects that requires begin/end for ifs
(Inherited from Dialect.) | |
GetLimitString(SqlString, SqlString, SqlString) | (Overrides Dialect..::..GetLimitString(SqlString, SqlString, SqlString).) | |
GetLimitString(SqlString, Nullable<(Of <<'(Int32>)>>), Nullable<(Of <<'(Int32>)>>), Parameter, Parameter) |
Generates a string to limit the result set to a number of maximum results with a specified offset into the results.
Expects any database-specific offset and limit adjustments to have already been performed (ex. UseMaxForLimit, OffsetStartsAtOne).
Performs error checking based on the various dialect limit support options. If both parameters and fixed valeus are
specified, this will use the parameter option if possible. Otherwise, it will fall back to a fixed string.
(Inherited from Dialect.) | |
GetLimitValue |
Some databases require that a limit statement contain the maximum row number
instead of the number of rows to retrieve. This method adjusts source
limit and offset values to account for this.
(Inherited from Dialect.) | |
GetLockingStrategy |
Get a strategy instance which knows how to acquire a database-level lock
of the specified mode for this dialect.
(Inherited from Dialect.) | |
GetLongestTypeName |
Gets the name of the longest registered type for a particular DbType.
(Inherited from Dialect.) | |
GetOffsetValue |
Some databases use limit row offsets that start at one instead of zero.
This method adjusts a desired offset using the OffsetStartsAtOne flag.
(Inherited from Dialect.) | |
GetResultSet |
Given a callable statement previously processed by RegisterResultSetOutParameter(DbCommand, Int32),
extract the DbDataReader from the OUT parameter.
(Inherited from Dialect.) | |
GetSelectClauseNullString |
Given a DbType type code, determine an appropriate
null value to use in a select clause.
(Inherited from Dialect.) | |
GetSelectSequenceNextValString |
Generate the select expression fragment that will retrieve the next
value of a sequence as part of another (typically DML) statement.
(Inherited from Dialect.) | |
GetSequenceNextValString |
Generate the appropriate select statement to to retreive the next value
of a sequence.
(Inherited from Dialect.) | |
GetTableComment | (Inherited from Dialect.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetTypeName(SqlType) |
Get the name of the database type associated with the given
SqlType,
(Inherited from Dialect.) | |
GetTypeName(SqlType, Int32, Int32, Int32) |
Get the name of the database type associated with the given
SqlType.
(Inherited from Dialect.) | |
IsKnownToken | (Inherited from Dialect.) | |
IsQuoted |
Checks to see if the name has been quoted.
(Inherited from Dialect.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
PerformTemporaryTableDDLInIsolation |
Does the dialect require that temporary table DDL statements occur in
isolation from other statements? This would be the case if the creation
would cause any current transaction to get committed implicitly.
(Inherited from Dialect.) | |
Qualify | (Inherited from Dialect.) | |
Quote |
Quotes a name.
(Inherited from Dialect.) | |
QuoteForAliasName |
Quotes a name for being used as a aliasname
(Inherited from Dialect.) | |
QuoteForColumnName |
Quotes a name for being used as a columnname
(Inherited from Dialect.) | |
QuoteForSchemaName |
Quotes a name for being used as a schemaname
(Inherited from Dialect.) | |
QuoteForTableName |
Quotes a name for being used as a tablename
(Inherited from Dialect.) | |
RegisterCastType |
Suclasses register a typename for the given type code, to be used in CAST()
statements.
| |
RegisterCastTypes | ||
RegisterColumnType(DbType, String) |
Suclasses register a typename for the given type code. $l in the
typename will be replaced by the column length (if appropriate).
(Inherited from Dialect.) | |
RegisterColumnType(DbType, Int32, String) |
Subclasses register a typename for the given type code and maximum
column length. $l in the type name will be replaced by the column
length (if appropriate)
(Inherited from Dialect.) | |
RegisterFunction | (Inherited from Dialect.) | |
RegisterHibernateType(DbType, String) | (Inherited from Dialect.) | |
RegisterHibernateType(DbType, Int32, String) | (Inherited from Dialect.) | |
RegisterKeyword | (Inherited from Dialect.) | |
RegisterResultSetOutParameter |
Registers an OUT parameter which will be returing a
DbDataReader. How this is accomplished varies greatly
from DB to DB, hence its inclusion (along with {@link #getResultSet}) here.
(Inherited from Dialect.) | |
ToBooleanValueString | The SQL literal value to which this database maps boolean values. (Inherited from Dialect.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
UnQuote(String) |
Unquotes and unescapes an already quoted name
(Inherited from Dialect.) | |
UnQuote(array<String>[]()[][]) |
Unquotes an array of Quoted Names.
(Inherited from Dialect.) |
Extension Methods
Name | Description | |
---|---|---|
As<(Of <<'(T>)>>) | (Defined by TypeHelperExtensionMethods.) | |
IsBetween |
Apply a "between" constraint to the named property
Note: throws an exception outside of a QueryOver expression
(Defined by RestrictionExtensions.) | |
IsIn(array<Object>[]()[][]) | Overloaded.
Apply an "in" constraint to the named property
Note: throws an exception outside of a QueryOver expression
(Defined by RestrictionExtensions.) | |
IsIn(ICollection) | Overloaded.
Apply an "in" constraint to the named property
Note: throws an exception outside of a QueryOver expression
(Defined by RestrictionExtensions.) | |
IsProxy | (Defined by NHibernateProxyHelper.) | |
ToTypeParameters | (Defined by ReflectHelper.) |
Properties
Name | Description | |
---|---|---|
AddColumnString | (Overrides Dialect..::..AddColumnString.) | |
AreStringComparisonsCaseInsensitive |
Are string comparisons implicitly case insensitive.
In other words, does [where 'XYZ' = 'xyz'] resolve to true?
(Inherited from Dialect.) | |
CascadeConstraintsString |
Completely optional cascading drop clause
(Inherited from Dialect.) | |
CloseQuote | (Overrides Dialect..::..CloseQuote.) | |
CreateMultisetTableString |
Slight variation on CreateTableString.
The command used to create a multiset table.
(Inherited from Dialect.) | |
CreateTableString | Command used to create a table. (Inherited from Dialect.) | |
CreateTemporaryTablePostfix |
Get any fragments needing to be postfixed to the command for
temporary table creation.
(Inherited from Dialect.) | |
CreateTemporaryTableString | (Overrides Dialect..::..CreateTemporaryTableString.) | |
CurrentTimestampSelectString |
Retrieve the command used to retrieve the current timestammp from the database.
(Inherited from Dialect.) | |
CurrentTimestampSQLFunctionName |
The name of the database-specific SQL function for retrieving the
current timestamp.
(Inherited from Dialect.) | |
DefaultProperties |
Retrieve a set of default Hibernate properties for this database.
(Inherited from Dialect.) | |
DisableForeignKeyConstraintsString |
Only needed if the Dialect does not have SupportsForeignKeyConstraintInAlterTable.
(Inherited from Dialect.) | |
DoesReadCommittedCauseWritersToBlockReaders |
For the underlying database, is READ_COMMITTED isolation implemented by
forcing readers to wait for write locks to be released?
(Inherited from Dialect.) | |
DoesRepeatableReadCauseReadersToBlockWriters |
For the underlying database, is REPEATABLE_READ isolation implemented by
forcing writers to wait for read locks to be released?
(Inherited from Dialect.) | |
DropConstraints |
Do we need to drop constraints before dropping tables in the dialect?
(Inherited from Dialect.) | |
DropForeignKeyString | (Inherited from Dialect.) | |
EnableForeignKeyConstraintsString |
Only needed if the Dialect does not have SupportsForeignKeyConstraintInAlterTable.
(Inherited from Dialect.) | |
ForUpdateNowaitString |
Retrieves the FOR UPDATE NOWAIT syntax specific to this dialect
(Inherited from Dialect.) | |
ForUpdateOfColumns | Is FOR UPDATE OF syntax supported? (Inherited from Dialect.) | |
ForUpdateString |
Get the string to append to SELECT statements to acquire locks
for this dialect.
(Inherited from Dialect.) | |
Functions |
Aggregate SQL functions as defined in general. This is
a case-insensitive hashtable!
(Inherited from Dialect.) | |
GenerateTablePrimaryKeyConstraintForIdentityColumn |
Set this to false if no table-level primary key constraint should be generated when an identity column has been specified for the table.
This is used as a work-around for SQLite so it doesn't tell us we have "more than one primary key".
(Inherited from Dialect.) | |
HasDataTypeInIdentityColumn |
Whether this dialect has an identity clause added to the data type or a
completely separate identity data type.
(Inherited from Dialect.) | |
HasSelfReferentialForeignKeyBug | (Inherited from Dialect.) | |
IdentityColumnString | (Overrides Dialect..::..IdentityColumnString.) | |
IdentityInsertString |
The keyword used to insert a generated value into an identity column (or null).
Need if the dialect does not support inserts that specify no column values.
(Inherited from Dialect.) | |
IdentitySelectString | (Overrides Dialect..::..IdentitySelectString.) | |
IdentityStyleIdentifierGeneratorClass |
The class (which implements IIdentifierGenerator)
which acts as this dialects identity-style generation strategy.
(Inherited from Dialect.) | |
InsertGeneratedIdentifierRetrievalMethod | (Inherited from Dialect.) | |
IsCurrentTimestampSelectStringCallable |
Should the value returned by CurrentTimestampSelectString
be treated as callable. Typically this indicates that JDBC escape
sytnax is being used...
(Inherited from Dialect.) | |
Keywords | (Inherited from Dialect.) | |
LowercaseFunction |
The name of the SQL function that transforms a string to lowercase
(Inherited from Dialect.) | |
MaxAliasLength | (Inherited from Dialect.) | |
NativeIdentifierGeneratorClass |
The class (which implements IIdentifierGenerator)
which acts as this dialects native generation strategy.
(Inherited from Dialect.) | |
NoColumnsInsertString |
The keyword used to insert a row without specifying any column values
(Inherited from Dialect.) | |
NullColumnString |
The keyword used to specify a nullable column
(Inherited from Dialect.) | |
OffsetStartsAtOne |
For limit clauses, indicates whether to use 0 or 1 as the offset that returns the first row. Should be true if the first row is at offset 1.
(Inherited from Dialect.) | |
OpenQuote | (Overrides Dialect..::..OpenQuote.) | |
PrimaryKeyString |
The keyword used to create a primary key constraint
(Inherited from Dialect.) | |
QualifyIndexName | (Overrides Dialect..::..QualifyIndexName.) | |
QuerySequencesString | Get the select command used retrieve the names of all sequences. (Inherited from Dialect.) | |
SelectGUIDString |
Get the command used to select a GUID from the underlying database.
(Optional operation.)
(Inherited from Dialect.) | |
SupportsBindAsCallableArgument |
Does this dialect support using a JDBC bind parameter as an argument
to a function or procedure call?
(Inherited from Dialect.) | |
SupportsCascadeDelete | (Inherited from Dialect.) | |
SupportsCircularCascadeDeleteConstraints |
Does this dialect support definition of cascade delete constraints
which can cause circular chains?
(Inherited from Dialect.) | |
SupportsColumnCheck | Does this dialect support column-level check constraints? (Inherited from Dialect.) | |
SupportsCommentOn | (Inherited from Dialect.) | |
SupportsCurrentTimestampSelection | Does this dialect support a way to retrieve the database's current timestamp value? (Inherited from Dialect.) | |
SupportsEmptyInList |
Does this dialect support empty IN lists?
For example, is [where XYZ in ()] a supported construct?
(Inherited from Dialect.) | |
SupportsExistsInSelect | Does the dialect support an exists statement in the select clause? (Inherited from Dialect.) | |
SupportsExpectedLobUsagePattern |
Expected LOB usage pattern is such that I can perform an insert
via prepared statement with a parameter binding for a LOB value
without crazy casting to JDBC driver implementation-specific classes...
Part of the trickiness here is the fact that this is largely
driver dependent. For example, Oracle (which is notoriously bad with
LOB support in their drivers historically) actually does a pretty good
job with LOB support as of the 10.2.x versions of their drivers...
(Inherited from Dialect.) | |
SupportsForeignKeyConstraintInAlterTable |
Does this dialect support adding foreign key constraints via alter table? If not, it's assumed they can only be added through create table.
(Inherited from Dialect.) | |
SupportsIdentityColumns | (Overrides Dialect..::..SupportsIdentityColumns.) | |
SupportsIfExistsAfterTableName |
Does the dialect support the syntax 'drop table NAME if exists'
(Inherited from Dialect.) | |
SupportsIfExistsBeforeTableName | (Overrides Dialect..::..SupportsIfExistsBeforeTableName.) | |
SupportsInsertSelectIdentity |
Does the dialect support some form of inserting and selecting
the generated IDENTITY value all in the same statement.
(Inherited from Dialect.) | |
SupportsLimit | (Overrides Dialect..::..SupportsLimit.) | |
SupportsLimitOffset |
Does this Dialect support an offset?
(Inherited from Dialect.) | |
SupportsLobValueChangePropogation | Does the dialect support propagating changes to LOB
values back to the database? Talking about mutating the
internal value of the locator as opposed to supplying a new
locator instance...
For BLOBs, the internal value might be changed by:
{@link java.sql.Blob#setBinaryStream},
{@link java.sql.Blob#setBytes(long, byte[])},
{@link java.sql.Blob#setBytes(long, byte[], int, int)},
or {@link java.sql.Blob#truncate(long)}.
For CLOBs, the internal value might be changed by:
{@link java.sql.Clob#setAsciiStream(long)},
{@link java.sql.Clob#setCharacterStream(long)},
{@link java.sql.Clob#setString(long, String)},
{@link java.sql.Clob#setString(long, String, int, int)},
or {@link java.sql.Clob#truncate(long)}.
NOTE : I do not know the correct answer currently for
databases which (1) are not part of the cruise control process
or (2) do not {@link #supportsExpectedLobUsagePattern}.
(Inherited from Dialect.) | |
SupportsNotNullUnique | (Inherited from Dialect.) | |
SupportsOuterJoinForUpdate |
Does this dialect support FOR UPDATE in conjunction with outer joined rows?
(Inherited from Dialect.) | |
SupportsParametersInInsertSelect |
Does this dialect support parameters within the select clause of
INSERT ... SELECT ... statements?
(Inherited from Dialect.) | |
SupportsPooledSequences |
Does this dialect support "pooled" sequences. Not aware of a better
name for this. Essentially can we specify the initial and increment values?
(Inherited from Dialect.) | |
SupportsResultSetPositionQueryMethodsOnForwardOnlyCursor |
Does this dialect support asking the result set its positioning
information on forward only cursors. Specifically, in the case of
scrolling fetches, Hibernate needs to use
{@link java.sql.ResultSet#isAfterLast} and
{@link java.sql.ResultSet#isBeforeFirst}. Certain drivers do not
allow access to these methods for forward only cursors.
NOTE : this is highly driver dependent!
(Inherited from Dialect.) | |
SupportsRowValueConstructorSyntax |
Is this dialect known to support what ANSI-SQL terms "row value
constructor" syntax; sometimes called tuple syntax.
Basically, does it support syntax like
"... where (FIRST_NAME, LAST_NAME) = ('Steve', 'Ebersole') ...".
(Inherited from Dialect.) | |
SupportsRowValueConstructorSyntaxInInList |
If the dialect supports {@link #supportsRowValueConstructorSyntax() row values},
does it offer such support in IN lists as well?
For example, "... where (FIRST_NAME, LAST_NAME) IN ( (?, ?), (?, ?) ) ..."
(Inherited from Dialect.) | |
SupportsSequences |
Does this dialect support sequences?
(Inherited from Dialect.) | |
SupportsSqlBatches |
Supports splitting batches using GO T-SQL command
(Inherited from Dialect.) | |
SupportsSubqueryOnMutatingTable |
Does this dialect support referencing the table being mutated in
a subquery. The "table being mutated" is the table referenced in
an UPDATE or a DELETE query. And so can that table then be
referenced in a subquery of said UPDATE/DELETE query.
For example, would the following two syntaxes be supported: (Inherited from Dialect.)
| |
SupportsSubselectAsInPredicateLHS |
Are subselects supported as the left-hand-side (LHS) of
IN-predicates.
In other words, is syntax like "... {subquery} IN (1, 2, 3) ..." supported?
(Inherited from Dialect.) | |
SupportsSubSelects | (Overrides Dialect..::..SupportsSubSelects.) | |
SupportsTableCheck | Does this dialect support table-level check constraints? (Inherited from Dialect.) | |
SupportsTemporaryTables | (Overrides Dialect..::..SupportsTemporaryTables.) | |
SupportsUnboundedLobLocatorMaterialization |
Is it supported to materialize a LOB locator outside the transaction in
which it was created?
Again, part of the trickiness here is the fact that this is largely
driver dependent.
NOTE: all database I have tested which {@link #supportsExpectedLobUsagePattern()}
also support the ability to materialize a LOB outside the owning transaction...
(Inherited from Dialect.) | |
SupportsUnionAll |
Does this dialect support UNION ALL, which is generally a faster variant of UNION?
True if UNION ALL is supported; false otherwise.
(Inherited from Dialect.) | |
SupportsUnique |
Does this dialect support the UNIQUE column syntax?
(Inherited from Dialect.) | |
SupportsUniqueConstraintInCreateAlterTable | Does this dialect support adding Unique constraints via create and alter table ? (Inherited from Dialect.) | |
SupportsVariableLimit |
Can parameters be used for a statement containing a LIMIT?
(Inherited from Dialect.) | |
TableTypeString | (Inherited from Dialect.) | |
TimestampResolutionInTicks |
Gives the best resolution that the database can use for storing
date/time values, in ticks.
(Inherited from Dialect.) | |
UseInputStreamToInsertBlob |
Should LOBs (both BLOB and CLOB) be bound using stream operations (i.e.
{@link java.sql.PreparedStatement#setBinaryStream}).
(Inherited from Dialect.) | |
UseMaxForLimit |
Does the LIMIT clause take a "maximum" row number instead
of a total number of returned rows?
(Inherited from Dialect.) | |
ViolatedConstraintNameExtracter | (Inherited from Dialect.) |