如何理解mysql5.7_rowid虚列-创新互联

如何理解mysql 5.7 _rowid虚列,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

成都创新互联主营玉龙网站建设的网络公司,主营网站建设方案,手机APP定制开发,玉龙h5微信平台小程序开发搭建,玉龙网站营销推广欢迎玉龙等地区企业咨询

查阅官方资料

13 SQL Statement Syntax
13.1 Data Definition Statements
13.1.14 CREATE INDEX Syntax

测试示例

创建测试表并插入数据

mysql> create table t_rowid(a int,b int,key(a));
Query OK, 0 rows affected (0.03 sec)
mysql> insert into t_rowid select 1,1;
Query OK, 1 row affected (0.00 sec)
Records: 1 Duplicates: 0 Warnings: 0
mysql> insert into t_rowid select 2,2;
Query OK, 1 row affected (0.00 sec)
Records: 1 Duplicates: 0 Warnings: 0

显示_rowid

mysql> select _rowid from t_rowid;
+--------+
| _rowid |
+--------+
| 1 |
| 2 |
+--------+
2 rows in set (0.00 sec)
mysql> select _ROWID from t_rowid;
+--------+
| _ROWID |
+--------+
| 1 |
| 2 |
+--------+
2 rows in set (0.00 sec)

显示_rowid及部分列

mysql> select  _rowid,a from t_rowid;
+--------+---+
| _rowid | a |
+--------+---+
|      1 | 1 |
|      2 | 2 |
+--------+---+
2 rows in set (0.00 sec)

显示_rowid及全部列

mysql> select  _rowid,a,b from t_rowid;
+--------+---+------+
| _rowid | a | b    |
+--------+---+------+
|      1 | 1 |    1 |
|      2 | 2 |    2 |
+--------+---+------+
2 rows in set (0.00 sec)

不能显示_rowid及*

mysql> select  _rowid,* from t_rowid;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version 
for the right syntax to use near '* from t_rowid' at line 1
mysql>

_rowid不适用于下述场景:

  • 主键列或者普通列的数据类型不是数字类型

  • 主键是联合主键

  • 唯一列是非空的

关于如何理解mysql 5.7 _rowid虚列问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联-成都网站建设公司行业资讯频道了解更多相关知识。

新闻名称:如何理解mysql5.7_rowid虚列-创新互联
标题链接:https://www.cdcxhl.com/article0/phdio.html

成都网站建设公司_创新互联,为您提供网站建设网页设计公司定制网站面包屑导航网站导航自适应网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站托管运营