有毒吧啊啊

有毒吧啊啊

CREATE TABLE test_unique(
id INT UNSIGNED AUTO_INCREMENT KEY,
username VARCHAR(20) NOT NULL UNIQUE KEY,
email VARCHAR(50) UNIQUE,
card CHAR(18) UNIQUE
);

username VARCHAR(20) NOT NULL UNIQUE KEY 这个KEY是代表主键吗,我记得两个主键不是这样设置的啊,为啥不会报错

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕小尤 2020-09-06 10:50:22

同学你好,1.key 是数据库的物理结构,它包含两层意义和作用,一是约束(偏重于约束和规范数据库的结构完整性),二是索引(辅助查询用的)。

MySQL Key值(PRI, UNI, MUL)的含义:

    PRI主键约束;

    UNI唯一约束;

    MUL可以重复。

2. primary key 有两个作用,一是约束作用(constraint),用来规范一个存储主键和唯一性,但同时也在此key上建立了一个主键索引;    

PRIMARY KEY 约束:

    唯一标识数据库表中的每条记录;                                                                         

    主键必须包含唯一的值;

    主键列不能包含 NULL 值;

    每个表都应该有一个主键,并且每个表只能有一个主键。(PRIMARY KEY 拥有自动定义的 UNIQUE 约束)

3. 在此SQL语句中,KEY结合AUTO_INCREMENT (自增)进行定义,则代表是主键。

祝学习愉快!

  • 提问者 AOSOUL #1
    所以这里的key不是primary key吗
    2020-09-07 02:20:27
  • 好帮手慕小尤 回复 提问者 AOSOUL #2
    同学你好,不是的,在此语句中key结合AUTO_INCREMENT(自增)进行定义,代表的就是primary key。祝学习愉快!
    2020-09-07 09:54:17
  • 提问者 AOSOUL #1
    我还是不太明白key和primary key的具体作用和不同
    2020-09-06 01:40:27
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
PHP小白零基础入门
  • 参与学习           人
  • 提交作业       626    份
  • 解答问题       4930    个

想要学好Web后端开发的中流砥柱语言,本阶段为你轻松铺就扎实的基础,从前端网页布局的搭建到后台PHP开发,助你从零基础到掌握主流开发语言。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师