精华内容
下载资源
问答
  • MySQL 创建主键外键和复合主键的方法,需要的朋友可以参考下。
  • MySQL 创建主键外键和复合主键的方法,需要的朋友可以参考下。1.创建主键语法ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名);2.创建外键语法ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_...

    MySQL 创建主键,外键和复合主键的方法,需要的朋友可以参考下。

    1.创建主键语法

    ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名);

    2.创建外键语法

    ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[约束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列] ;

    3.使用组合主键

    如果一列不能唯一区分一个表里的记录时,可以考虑多个列组合起来达到区分表记录的唯一性,形式

    ①创建时:create table sc (

    studentno int,

    courseid int,

    score int,

    primary key (studentno,courseid) );

    ②修改时:alter table tb_name add primary key (字段1,字段2,字段3);

    展开全文
  • MySQL主键和外键

    千次阅读 2018-07-16 09:23:50
    从报错信息看,应当是表的主键和外键的问题,先用show create table products查看表products的创建信息: 外键关系涉及一个包含中心数据值的父表,以及一个具有相同值的子表,指向其父表。这里的子表是product,...

    使用《MySQL必知必会》中的表,向表products插入数据出错:

    从报错信息看,应当是表的主键和外键的问题,先用show create table products查看表products的创建信息:

    外键关系涉及一个包含中心数据值的父表,以及一个具有相同值的子表,指向其父表。这里的子表是product,父表是vendors,对应列是vend_id。外键子句在子表中指定,如果在父表中没有匹配的候选键值,它将拒绝任何试图在子表中创建外键值的insertupdate操作。错误码:1452 本质上意味着product尝试插入的行没有匹配的行在表vendors中。要在products中插入值,首先必须在vendors表中输入值,并在products表中使用相同的vend_id。

    先看当前表products的数据

    再看表vendors中的数据:

    vendors表中的vend_id有个多出的1006,正好成功把它插入product表:

    参考:
    Cannot add or update a child row错误
    错误1452:不能添加或更新子行:外键约束失败。

    展开全文
  • mysql-主键和外键

    2016-10-14 23:43:12
    主键和外键定义关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键 。学生表(学号,姓名,性别,班级) 其中每个学生的学号是唯一的,学号就是一...

    主键和外键定义

    关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键 。
    
    学生表(学号,姓名,性别,班级) 其中每个学生的学号是唯一的,学号就是一个主键 
    
    课程表(课程编号,课程名,学分) 其中课程编号是唯一的,课程编号就是一个主键
    
    成绩表(学号,课程号,成绩) 绩表中单一一个属性无法唯一标识一条记录,学号和课程号的组合才可以唯一标识一条记录,所以学号和课程号的属性组是一个主键,成绩表中的学号不是成绩表的主键,但它和学生表中的学号相对应,并且学生表中的学号是学生表的主键,则称成绩表中的学号是学生表的外键,同理成绩表中的课程号是课程表的外键 
    
    定义主键和外键主要是为了维护关系数据库的完整性,总结一下,
    1.主键是能确定一条记录的唯一标识,比如,一条记录包括身份正号,姓名,年龄。 身份证号是唯一能确定你这个人的,其他都可能有重复,所以,身份证号是主键。 
    2.外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。 比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键。 
    

    关于删除

    在有主键约束和外键约束的数据库中,如果要删除某些数据的话,需要注意,必须先删除外键部分,再删除主键部分。

    展开全文
  • Mysql主键和外键

    2019-07-06 10:47:06
    主键和外键 ** 什么是主键和外键 关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组(列)就可以成为一个主键。 譬如: 学生表(学号(为主键),姓名,性别,班级...

    **

    主键和外键

    **
    什么是主键和外键
    关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组(列)就可以成为一个主键。
    譬如:
    学生表(学号(为主键),姓名,性别,班级)
    其中每个学生的学号是唯一的,学号就是一个主键
    课程表(课程编号(为主键),课程名,学分)
    其中课程编号是唯一的,课程编号就是一个主键
    成绩表(学号(外键),课程号(主键),成绩)
    成绩表中单一一个属性无法唯一标识一条记录,学号和课程号的组合才可以唯一标识一条记录,所以 学号和课程号的属性组是一个主键
    成绩表中的学号不是成绩表的主键,但它和学生表中的学号相对应,并且学生表中的学号是学生表的主键,则称成绩表中的学号是学生表的外键

    **

    主键和外键的作用

    **
    为了维护关系数据库的完整性:
    主键是能确定一条记录的唯一标识,比如,一条记录包括身份正号,姓名,年龄。身份证号是唯一能确定你本人的,其他都有可能重复,因此,身份证号才作为你的主键。
    外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键。
    起约束作用:
    外键取值规则:空值或参照的主键值。
    (1)插入非空值时,如果主键表中没有这个值,则不能插入。
    (2)更新时,不能改为主键表中没有的值。
    (3)删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。
    (4)更新主键记录时,同样有级联更新和拒绝执行的选择。

    展开全文
  • 主要介绍了MySQL主键外键的区别联系,是MySQL入门学习中的基础知识,需要的朋友可以参考下
  • MySQL如何创建主键外键和复合主键

    千次阅读 2019-10-28 14:36:13
    1.主键语法 ①创建时:create table sc ( studentnoint, courseidint, scoreint, primary key (studentno) ); ②修改时:ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名); 前提是原先没有...
  • mysql主键和外键

    2019-12-29 10:29:54
    主键主要是用于其他表的外键关联,以及本记录的修改与删除。 二.外键 1>.什么是外键  如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间...
  • Mysql主键和外键

    2021-05-19 09:52:56
    Mysql主键和外键 主键 概念 数据库表中对存储 数据对象唯一完整表示的数据列或属性的组合 特点 主键是唯一的,一个表中至多有一个主键 不可以为空 允许组合主键 外键 概念 用于建立加强两个表数据之间的...
  • 如何将复合主键用作外键?看起来我的尝试不起作用.create table student(student_id varchar (25) not null ,student_name varchar (50) not null ,student_pone int ,student_CNIC varchar (50),students_Email ...
  • 总结mysql主键和外键的添加方式
  • 关于MySQL列表主键外键的定义关联 首先我们需要通过cmd创建两个表单,以下为创建的具体步骤。(创建表单之前先通过cmd登录MySQL账号并选择数据库哦!) 1.1(创建表单) 以上第一行代码为创建一个名为emp2的表单...
  • 1.MySQL连接数据库时,因为之前安装过wamp所以用navicat连接mysql一直报错,试了各种方法都没有解决。解决方法:1.卸载wamp(以后用不着的情况下); 2.安装MySql(百度软件可下载),...2.MySql创建外键的问题,保存报...
  • Chapter2 MySQL主键外键、自增 文章目录Chapter2 MySQL主键外键、自增一、主键二、外键三、自增 一、主键 #主键的作用是保证数据的唯一性 #一个表只能有一个主键,但主键可以由多列构成,只要多列合成表现...
  • MySql设置主键外键命令

    千次阅读 2019-09-27 20:48:46
    设置主键命令 : 在一开始建表的时候就要设置好主键 studentID INT auto_increment PRIMARY KEY, 把已经建好的表的某一列设置成主键 设置外键命令: FOREIGN key(studentName) REFERENCES orders...
  • mysql 添加主键和外键【深度解析】

    万次阅读 多人点赞 2018-08-16 09:42:08
    1,主外键的定义 主关键字(primary key ): 是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录。   外关键字(foreign key) : 是用于建立或加强两个表数据之间的链接的一列或多列。 如果公共关键字...
  • Mysql数据库主键外键的理解 1:什么是主键 在一张表中,用来唯一标识一条记录的字段集,叫做主关键字或者关键码,简称主键 2:什么是外键 一张表的非主属性是另一个表的主属性就是这个表的外键 一张表的...
  • 本文是一些关于mysql的基本知识点,像主外键以及索引之类的。 主键主键是数据表的唯一索引,比如学生表里有学号姓名,姓名可能有重名的,但学号确是唯一的,你要从学生表中搜索一条纪录如查找一个人,就只能...
  • MySQL主键外键的区别联系

    万次阅读 2017-03-31 10:04:14
    主键外键的关系,通俗点儿讲,我现在有一个论坛,有两张表,一张是主贴 thread,一张是回帖 reply 先说说主键主键是表里面唯一识别记录的字段,一般是帖子id,体现在访问的时候,例如是 thread.php?id=1 表示...
  • Mysql简单习题 主键和外键创建

    千次阅读 2019-08-15 19:51:47
    这是我今天写的关于Mysql的习题: –1.学生表 Student(s_id,s_name,s_birth,s_sex) --学生编号,学生姓名, 出生年月,学生性别 –2.课程表 Course(c_id,c_name,t_id) – --课程编号, 课程名称, 教师编号 –3.教师表 ...
  • MySQL主键外键、索引的简单整理 主键: 对于关系表,有个很重要的约束,就是任意两条记录不能重复,能够通过某个字段唯一区分出不同的记录,这个字段被称为主键。 唯一标志一条记录,不能有重复值,不允许为...
  • [导读 ] 使用 MySQL 开发过数据库驱动的小型 web 应用程序的人都知道对关系数据库 的表进行创建 检索更新删除等操作都是些比较简单的过程 理论上 只要掌握了最常 见的 SQL 语句的用法并熟悉您选择使用的服务器端...
  • mysql主键和外键

    千次阅读 2018-07-23 21:31:26
    如果有多个字段都为PRIMARY KEY,称为复合主键,必须一起创建主键字段的KEY标志是PRI 通常与AUTO——INCREMENT ----字段值自增长 ++ 经常把表中能够唯一标示记录的字段设置为主键字段 添加主键的两种方式   ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 81,218
精华内容 32,487
关键字:

mysql创建主键和外键

mysql 订阅