• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > 详解mysql数据库中的主键

详解mysql数据库中的主键

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了mysql,数据库,主键等相关知识,希望本文的分享对您有所帮助
主键介绍

正如所述,主键值必须唯一。即,表中的每个行必须具有唯一的主键值。如果主键使用单个列,则它的值必须唯一。如果使用多个列,则这些列的组合值必须唯一。

mysql主键的作用

唯一标识表中每行的这个列(或这组列)称为主键。没有主键,更新或删除表中特定行很困难,因为没有安全的方法保证只设计相关的行。

迄今为止我们看到的 CREATE TABLE 例子都是用单个列作为主键。其中主键用以下的类似的语句定义:

PRIMARY KEY (vend_id )

为创建由多个列组成的主键,应该以逗号分隔的列表给出各列名,如下所示:

create table orderitems
(
order_num              int              NOT NULL,
order_item             int               NOT NULL,
prod_id              char(10)            NOT NULL,
quantity              int               NOT NULL,
item_price              decimal(8,2)                  NOT NULL,
PRIMARY KEY (order_num,order_item)
)ENGINE = InnoDB;

orderitems 表包含orders表中每个订单的细节。每个订单有多项物品,但每个订单任何时候都只有1个第一项物品,1个第二项物品,如此等等。因此,订单号( order_num 列)和订单物品( order_item 列)的组合是唯一的,从而适合作为主键,其定义为:

PRIMARY KEY ( order_num,order_item)

主键可以在创建表时定义(如这里所示),或者在创建表之后定义。

主键和 NULL 值 主键为其值唯一标识表中每个行的列。主键中只能使用不允许 NULL 值的列。允许 NULL 值的列不能作为唯一标识。

关于主键自增长,我们会在mysql创建数据表中使用AUTO_INCREMENT的详解中会详细讲解到。

【相关推荐】

  1. 微课江湖特别推荐:php程序员工具箱下载(一键搭建php环境)

  2. mysql自增长AUTO_INCREMENT实例用法

以上就是详解mysql数据库中的主键的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 分享下mysql各个主要版本之间的差异
  • MySQL essential版本和普通版本有什么区别?
  • redhat 5.4下安装MYSQL全过程
  • 如何用SQL命令查看Mysql数据库大小
  • 解析mysql中如何获得数据库的大小
  • 解析mysql修改为utf8后仍然有乱码的问题
  • 5个常用的MySQL数据库管理工具详细介绍
  • 解析在MySQL里创建外键时ERROR 1005的解决办法
  • 解析远程连接管理其他机器上的MYSQL数据库
  • mysql 精简过程(删除一些文件)

相关文章

  • 2017-05-11mysql 显示SQL语句执行时间的代码
  • 2018-12-05mysql数据库管理工具phpmyadmin的配置
  • 2017-05-11mysql 复制过滤重复如何解决
  • 2018-12-05MSSQL 游标使用 心得
  • 2018-12-05审计插件的内容推荐
  • 2017-05-11mysql "too many connections" 错误 之 mysql解决方法
  • 2018-12-05存储过程优缺点分析
  • 2018-12-05Mysql如何配置及Mysql服务无法启动
  • 2018-12-05SQLServer中SELECT语句的执行顺序
  • 2018-12-05用MySQL分析SQL的耗时问题

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • SQL Server 2008的逻辑查询处理步骤
    • 解析mysql中的auto_increment的问题
    • MySQL数据库添加新用户详解
    • 重装MySQL的注意事项
    • Mysql学习笔记
    • MongoDB+Hadoop运行环境搭建
    • sql server中千万数量级分页存储过程代码
    • MySQL之——CentOS下彻底卸载MySQL
    • SQL语句 操作全集 学习mssql的朋友一定要看
    • 安装MSSql2005时 “以前的某个程序安装已在安装计算机上创建挂起

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有