网站建设资讯

NEWS

网站建设资讯

mysql怎么看主键 mysql怎么看主键是否自增

mysql 主键查询是怎么查的

SELECT

创新互联建站是一家专注于网站设计、做网站与策划设计,柳州网站建设哪家好?创新互联建站做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:柳州等地区。柳州做网站价格咨询:13518219792

t.TABLE_NAME,

t.CONSTRAINT_TYPE,

c.COLUMN_NAME,

c.ORDINAL_POSITION

FROM

INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS t,

INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS c

WHERE

t.TABLE_NAME = c.TABLE_NAME

AND t.TABLE_SCHEMA = 'test'

AND t.CONSTRAINT_TYPE = 'PRIMARY KEY';

测试执行结果如下:

mysql SELECT

- t.TABLE_NAME,

- t.CONSTRAINT_TYPE,

- c.COLUMN_NAME,

- c.ORDINAL_POSITION

- FROM

- INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS t,

- INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS c

- WHERE

- t.TABLE_NAME = c.TABLE_NAME

- AND t.TABLE_SCHEMA = 'test'

- AND t.CONSTRAINT_TYPE = 'PRIMARY KEY'

- LIMIT 3;

+------------+-----------------+-------------+------------------+

| TABLE_NAME | CONSTRAINT_TYPE | COLUMN_NAME | ORDINAL_POSITION |

+------------+-----------------+-------------+------------------+

| mr_dept | PRIMARY KEY | dept_id | 1 |

| order | PRIMARY KEY | id | 1 |

| tab | PRIMARY KEY | id | 1 |

+------------+-----------------+-------------+------------------+

3 rows in set (0.06 sec)

MySQL之主键

主键是一个索引,mysql的索引是B+树,Mysql会按照键值的大小进行顺序存放,如果我们设置自增id为主键,这个时候主键是按照一种紧凑的接近顺序写入的方式进行存储数据。如果我们用其他字段作为主键的话,此时Mysql不得不为了将新记录插到合适位置而移动数据,甚至目标页面可能已经被回写到磁盘上而从缓存中清掉,此时又要从磁盘上读回来,这增加了很多额外的开销,同时频繁的移动、分页操作造成了大量的碎片。

- 考虑性能消耗

- 考虑资源消耗

- 考虑分库分表

在MySQL中如何设置主键和外键

工具/原料

电脑  MySQL

方法/步骤

设置主键:

1、通过终端进入到mysql命令行工具。

2、通过use关键字进行到目标数据库里。

3、如原表已有主键,先把原来的主键删除掉,通过DROPPRIMARYKEY命令:ALTERTABLE`jingyan`DROPPRIMARYKEY;。

4、主键已经没有了。

5、通过命令:ADDPRIMARYKEY来添加ALTERTABLE`jingyan`ADDPRIMARYKEY(`id`)。

6、输入后按下回车键即可看到queryok执行成功的字符。

7、回到数据库的可视化工具,即可显示现在的表在id列上添加了主键了。

设置外键:

1、创建好主从表。

2、选择主表,点击设计表,进入到表设计界面。

3、点击外键,进入到外键设置界面。

4、先设置外键名称和选择主表的外键字段。

5、然后在设置外键字段对应从表的数据库、表名和字。

6、点击保存就完成外键设置了。

MYSQL查询表的主键

SELECT

t.TABLE_NAME,

t.CONSTRAINT_TYPE,

c.COLUMN_NAME,

c.ORDINAL_POSITION

FROM

INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS t,

INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS c

WHERE

t.TABLE_NAME = c.TABLE_NAME

AND t.TABLE_SCHEMA = 'test'

AND t.CONSTRAINT_TYPE = 'PRIMARY KEY';

测试执行结果如下:

mysql SELECT

- t.TABLE_NAME,

- t.CONSTRAINT_TYPE,

- c.COLUMN_NAME,

- c.ORDINAL_POSITION

- FROM

- INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS t,

- INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS c

- WHERE

- t.TABLE_NAME = c.TABLE_NAME

- AND t.TABLE_SCHEMA = 'test'

- AND t.CONSTRAINT_TYPE = 'PRIMARY KEY'

- LIMIT 3;

+------------+-----------------+-------------+------------------+

| TABLE_NAME | CONSTRAINT_TYPE | COLUMN_NAME | ORDINAL_POSITION |

+------------+-----------------+-------------+------------------+

| mr_dept | PRIMARY KEY | dept_id | 1 |

| order | PRIMARY KEY | id | 1 |

| tab | PRIMARY KEY | id | 1 |

+------------+-----------------+-------------+------------------+

3 rows in set (0.06 sec)

mysql数据库中怎么获取表的主键

在SYBASE的ASE和ASA中,可以使用如下的系统存储过程来获取主键:

exec

sp_pkeys

'table_name';

sql

server也是一样的!

至于mysql,我没这个环境,相信应该有类似的存储过程的!

如何获取mysql数据库中某个表的主键或唯一字段

直接查看表结构就可以。方法如下:

1、以第三方软件Navicat for Mysql为例,登录指定的数据库。

2、点击上方图标“查询”——“新建查询”。

3、弹出查询窗口输入“describe 表名”,这里表名以“test”为例,则写为“describe test”(不含引号):

describe test

4、结果如图,其中KEY列,如果显示“PRI”则代表此列为主键。


当前文章:mysql怎么看主键 mysql怎么看主键是否自增
转载来源:http://cdweb.net/article/dodjici.html