Oracle 5.0 Reference Manual page 2990

Table of Contents

Advertisement

Standard SQL disallows references to column aliases in a
because when the
For example, the following query is illegal:
SELECT id, COUNT(*) AS cnt FROM
WHERE cnt > 0 GROUP BY id;
The
WHERE
the alias of a column value that is not known until after the rows have been selected, and grouped by
the
GROUP
In the select list of a query, a quoted column alias can be specified using identifier or string quoting
characters:
SELECT 1 AS `one`, 2 AS 'two';
Elsewhere in the statement, quoted references to the alias must use identifier quoting or the reference
is treated as a string literal. For example, this statement groups by the values in column id, referenced
using the alias `a`:
SELECT id AS 'a', COUNT(*) AS cnt FROM
GROUP BY `a`;
But this statement groups by the literal string
SELECT id AS 'a', COUNT(*) AS cnt FROM
GROUP BY 'a';
C.5.5.5. Rollback Failure for Nontransactional Tables
If you receive the following message when trying to perform a ROLLBACK, it means that one or more of
the tables you used in the transaction do not support transactions:
Warning: Some non-transactional changed tables couldn't be rolled back
These nontransactional tables are not affected by the
If you were not deliberately mixing transactional and nontransactional tables within the transaction, the
most likely cause for this message is that a table you thought was transactional actually is not. This
can happen if you try to create a table using a transactional storage engine that is not supported by
your
mysqld
engine, it instead creates the table as a
You can check the storage engine for a table by using either of these statements:
SHOW TABLE STATUS LIKE 'tbl_name';
SHOW CREATE TABLE tbl_name;
See
Section 13.7.5.33,
Syntax".
You can check which storage engines your
SHOW ENGINES;
You can also use the following statement, and check the value of the variable that is associated with
the storage engine in which you are interested:
SHOW VARIABLES LIKE 'have_%';
For example, to determine whether the
have_innodb
See
Section 13.7.5.13,
clause is evaluated, the column value may not yet have been determined.
WHERE
clause determines which rows should be included in the
BY.
server (or that was disabled with a startup option). If
"SHOW TABLE STATUS
[455]
variable.
"SHOW ENGINES
Query-Related Issues
tbl_name
tbl_name
and will not work as expected:
'a'
tbl_name
ROLLBACK
table, which is nontransactional.
MyISAM
Syntax", and
server supports by using this statement:
mysqld
storage engine is available, check the value of the
InnoDB
Syntax", and
Section 13.7.5.36,
2970
clause. This restriction is imposed
WHERE
clause, but it refers to
GROUP BY
statement.
does not support a storage
mysqld
Section 13.7.5.9,
"SHOW CREATE TABLE
"SHOW VARIABLES
Syntax".

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mysql 5.0

Table of Contents