mysql并非只有主键才能自增长,而是设为键的列就可以设置自增长。

 
如下:
CREATE TABLE t1 (
id INT,
col1 INT auto_increment NOT NULL
);

结果如下:

 

如果把col1列设为键,就可以创建自增。

CREATE TABLE t1 (
id INT,
col1 INT auto_increment NOT NULL,
key(col1)
);

结果如下:

 

如果我们把id设为主键,仍然可以创建成功。

CREATE TABLE t2 (
id INT PRIMARY KEY,
col1 INT auto_increment NOT NULL,
key(col1)
);

结果如下:

所以自增列必须是键,但不一定非是主键。但一张表能否有多个自增列?
答:一张表只能有一个自增列。
CREATE TABLE t3 (
id INT PRIMARY KEY auto_increment,
col1 INT auto_increment NOT NULL,
key(col1)
);

结果如下:

mysql非主键自增长的更多相关文章

  1. mysql设置主键自增长和自增长初始值

          本文主要向大家介绍MySQL数据库之Mysql创建表实现主键自增并且初始值为200,希望对大家学习MySQL数据库有所帮助.       假设已经创建表test,并且主键为id.Mysql ...

  2. mysql——非主键自增

    今天遇到一个问题: 要创建一张表,其中我想将ip和date这两列作为一个复合主键,可以通过如下语句修改表结构: alter table tb_name add primary key (字段1,字段2 ...

  3. mysql非主键提示key2 检查索引是否设定为唯一

  4. MySQL的常用命令:添加外键,修改字段名称,增加字段 设置主键自增长等

    Mysql命令添加外键 前提是有这么几个表  以mall_product 和 mall_category为例 ALTER TABLE mall_product ADD CONSTRAINT fore_ ...

  5. 聚集索引、非聚集索引、聚集索引组织表、堆组织表、Mysql/PostgreSQL对比、联合主键/自增长、InnoDB/MyISAM(引擎方面另开一篇)

    参考了多篇文章,分别记录,如下. 下面是第一篇的总结 http://www.jb51.net/article/76007.htm: 在MySQL中,InnoDB引擎表是(聚集)索引组织表(cluste ...

  6. PowerDesigner 15设置mysql主键自动增长及基数

    PowerDesigner 15设置mysql主键自动增长及基数 1.双击标示图,打开table properties->columns,  如图点击图标Customize Columns an ...

  7. MYSQL的全表扫描,主键索引(聚集索引、第一索引),非主键索引(非聚集索引、第二索引),覆盖索引四种不同查询的分析

    文章出处:http://inter12.iteye.com/blog/1430144 MYSQL的全表扫描,主键索引(聚集索引.第一索引),非主键索引(非聚集索引.第二索引),覆盖索引四种不同查询的分 ...

  8. mysql死锁-非主键索引更新引起的死锁

    背景:最近线上经常抛出mysql的一个Deadlock,细细查来,长了知识! 分析:错误日志如下: 21:02:02.563 ERROR dao.CommonDao        [pool-15-t ...

  9. 【mysql优化】mysql count(*)、count(1)、count(主键字段)、count(非主键字段)哪个性能最佳

    测试结果为:count(*)和count(1)基本相等,count(非主键字段)最耗性能 -- 数据量 708254select count(*) from tmp_test1;-- avg 0.22 ...

随机推荐

  1. 下载任意版本的Chromium

    Download Chromium You can test Chrome builds or Chromium builds.  Chrome builds have the most infras ...

  2. vs2017诊断工具

    vs2017诊断工具

  3. ajax控制页面跳转

    一开始我是这么写的,一直报错,跳转路径解析不了,显示为问号: 前台html: <form> <table style="margin: 200px auto;"& ...

  4. Helm 入门安装指南

    Helm 是 Kubernetes 生态系统中的一个软件包管理工具.本文将介绍 Helm 中的相关概念和基本工作原理,并通过一个具体的示例学习如何使用 Helm 打包.分发.安装.升级及回退 Kube ...

  5. nginx, supervisor

    Nginx(单进程): 反向代理, 负载均衡.图解 将配置文件 nginx.conf 的 user xx 配置好 xx用户 检查语法 $ sudo service nginx configtest 重 ...

  6. 3.纯 CSS 创作一个容器厚条纹边框特效

    原文地址:3.纯 CSS 创作一个容器厚条纹边框特效 没有啥好点子呀,不爽 HTML代码: <div class="box"> <div class=" ...

  7. jsp button onclick

    <input type="button" value="MD5哈希转换" onclick="javascript:document.getEle ...

  8. php缓存类

    <?php /* * 缓存类 cache * 实 例: include( "cache.php" ); $cache = new cache(30); $cache-> ...

  9. eclipse xDoclet错误

    转载: http://blog.csdn.net/lovelongjun/article/details/53485773 Missing library: xdoclet-1.2.1.jar. Se ...

  10. 11 python shutil 模块

      shutil 模块 高级的 文件.文件夹.压缩包 处理模块 1.将文件内容拷贝到另一个文件中 import shutil f1 = open('os_模块.py','r',encoding='ut ...