maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #08060
Re: Dynamic columns support in libmaria client library?
Hi, Peter!
On Dec 30, Peter Laursen wrote:
> Compare "generated columns" in MySQL 5.7.5 labs (refer
> http://mysqlserverteam.com/generated-columns-in-mysql-5-7-5/). It has
> instrumentation in SHOW and I_S. Please admit that this is a bug and an
> oversight from MariaDB to forget about this!
Agree, these could be useful.
On the other hand, virtual columns were implemented in MariaDB-5.2, in 2010.
And in these almost five years nobody ever requested these features for
SHOW and I_S, as far as I remember.
So, I don't believe I can be a judge of what is useful and what is not,
I got it wrong oh so many times.
Do you need these SHOW/I_S extensions? Please, create an issue in Jira
for them, if you do.
Regards,
Sergei
> Field Type Null Key
>
>
> select version(); -- 5.7.5-labs-preview
>
> create table comments(
> userid int AS (ExtractValue(comment,'/comment/userid')) STORED,
> comment TEXT,
> KEY(userid));
>
>
> show columns from comments;
> /*Default Extra
> ------- ------- ------ ------ ------- ---------
> userid int(11) YES MUL (NULL) VIRTUAL
> comment text YES (NULL)
> */
>
> describe comments;
> /*
> Field Type Null Key Default Extra
> ------- ------- ------ ------ ------- ---------
> userid int(11) YES MUL (NULL) VIRTUAL
> comment text YES (NULL)
> */
>
> show full fields from comments;
> /*
> Field Type Collation Null Key Default Extra
> Privileges Comment
> ------- ------- ----------------- ------ ------ ------- -------
> ------------------------------- ---------
> userid int(11) (NULL) YES MUL (NULL) VIRTUAL
> select,insert,update,references
> comment text latin1_swedish_ci YES (NULL)
> select,insert,update,references
> */
>
> select * from information_schema.`COLUMNS` where TABLE_NAME = 'comments';
>
> /*
> TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION
> COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH
> CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE
> DATETIME_PRECISION CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE
> COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT
> GENERATION_EXPRESSION
> ------------- ------------ ---------- ----------- ----------------
> -------------- ----------- --------- ------------------------
> ---------------------- ----------------- -------------
> ------------------ ------------------ ----------------- -----------
> ---------- ------- ------------------------------- --------------
> -----------------------------------------
> def test comments userid 1
> (NULL) YES int (NULL)
> (NULL) 10 0 (NULL) (NULL)
> (NULL) int(11) MUL VIRTUAL
> select,insert,update,references
> ExtractValue(comment,'/comment/userid')
> def test comments comment 2
> (NULL) YES text 65535
> 65535 (NULL) (NULL) (NULL) latin1
> latin1_swedish_ci text
> select,insert,update,references
>
> */
References