Mysql主外键
主键 primary key
创建表时直接加上主键:
create table student1(
id int primary key,
name varchar(20),
age int,
gender char(5)
);
定义列之后在指定主键
create table student2(
id int,
name varchar(20),
age int,
gemder char(5),
primary key(id)
);
修改表时添加主键:
create table student3(
id int,
name varchar(20),
age int,
gender char(5)
);
alter table student3 add primary key(id);
主键自增长:
主键必须是整数类型才可以自动增长
create table student4 (
id int primary key auto_increment,
name varchar(19),
age int,
gender char(5)
);
删除主键:
alter table student4 change id id int; --删除自动增长
DESC student4;
alter table student4 drop primary key;
DESC student4;
修改表时设置自增长
create table student5(
id int primary key,
name varchar(29),
age int,
gender char(7)
);
alter table student5 change id id int auto_increment;
-----删除主键自增长:
alter table student5 change id id int;
-----非空:
create table student6 (
id int primary key auto_increment,
name varchar(20) not null,
age int,
gender char(3)
);
-----唯一:
create table student7(
id int primary key auto_increment,
name varchar(20) unique,
age int ,
gender char(5)
);
添加唯一:
ALTER TABLE 表名 CHANGE name name VARCHAR(30) UNIQUE;
删除唯一:
DROP INDEX 列名 ON 表名;
alter table 表名 drop index 列名;
外键
create table a(
a_id int primary key auto_increment,
name varchar(20) unique not null,
age int,
gender char(5)
);
create table b(
b_id int primary key auto_increment,
name varchar(30),
age int,
gender char(4),
a_id int,
constraint cc foreign key(a_id) references a(a_id)
外键名 外键 谁是外键 参照物 那个表
);
-------修改表指定a s是b 的外键
create table a1(
a_id int primary key,
name varchar(20)
);
create table b1(
b_id int primary key,
name varchar(20),
a_id int
);
alter table b1 add constraint cc foreign key(a_id) references a1(a_id);
-----删除外键约束:
alter table b1 drop foreign key cc;
Mysql主外键的更多相关文章
- MySQL 主外键约束与标准SQL不同的地方
[标准SQL的外键约束条件] 1): 子表引用父表的主键 drop table if exists child,parent; create table if not exists parent( i ...
- Mysql 主外键与索引之间的区别和联系
系数据库依赖于主键,它是数据库物理模式的基石.主键在物理层面上只有两个用途: 惟一地标识一行. 作为一个可以被外键有效引用的对象. 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部 ...
- 查看mysql主外键信息
SELECT *FROMinformation_schema.key_column_usage tWHERE t.constraint_schema = '库名称'AND t.constraint_ ...
- MySql不支持主外键
创建表不支持主外键,能够添加外键成功,但是无法外键约束.查资料发现MySql的默认ENGINE 为MyISAM ,不支持外键,需要修改为 INNODB 修改前: Create Table CREAT ...
- MySQL创建数据表并建立主外键关系
为mysql数据表建立主外键需要注意以下几点: 需要建立主外键关系的两个表的存储引擎必须是InnoDB. 外键列和参照列必须具有相似的数据类型,即可以隐式转换的数据类型. 外键列和参照列必须创建索引, ...
- Mysql中的外键分析(什么是外键,为什么要用外键,添加外键,主外键关联删除)
有一个东西一直在我脑海中是个很烦的东西,但是这东西不搞清楚会阻碍自己的前进.自己做项目demo永远只能用一张表... 所以今天还是学习了下外键希望能够搞明白一些... 百度上搜索外键的作用" ...
- netcore2.0 ORM框架中如何配置自定义的主外键加载
环境:netcore2.0 DB :mysql ORM:Ant https://github.com/yuzd/AntData.ORM/tree/netcore2 [给我一个star吧] NUGET: ...
- mysql添加外键约束变为索引
今天有位自己填上一坑:mysql储存引擎 原因就是数据库表引擎为:MyISAM,建立主外键关系需要是InnoDB: 解决方案:alter table table_name1 engine=inno ...
- MySQL的外键,修改表,基本数据类型,表级别操作,其他(条件,通配符,分页,排序,分组,联合,连表操作)
MySQL的外键,修改表,基本数据类型,表级别操作,其他(条件,通配符,分页,排序,分组,联合,连表操作): a.创建2张表 create table userinfo(nid int not nul ...
随机推荐
- thinkphp5和thinkphp3.2.3中URL重写出现No input file specified
查询后解决办法是打开public目录下的.htaccess文件,把:RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] 改为:RewriteRule ^(.*)$ i ...
- C# 反射及应用
一.什么是反射 反射(Reflection)可以在运行时获 得.NET中每一个类型(包括类.结构.委托.接口和枚举等)的成员,包括方法.属性.事件,以及构造函数等.还可以获得每个成员的名称.限定符和参 ...
- Shadow Properties之美(一)【Microsoft Entity Framework Core随笔】
最近在做公司的项目的时候,开始把部分程序迁移到EF Core,然后有了一些感触,趁着还没忘却,还是先记录下来. EF Core还在成长中,我写这个的时候,版本是2.2.如果对着已有的EF 5/6来说, ...
- 一个C++右值引用的问题
暂时先不更新前一篇文章了,感觉那个文章要写好久.累死. 今天说一说C++右值引用的一个问题. 这个问题的发现也是很偶然的. 来一段毫无意义但是能证明问题的代码: std::string &&a ...
- Hyperledger Fabric 架构梳理
区块链的数据结构 State数据结构 由peer维护,key/value store Ledger 记录了所有成功和不成功的状态更新交易.Ledger被ordering service构造,是一个全 ...
- L347
Even Educators Believe These 7 Myths About Learning1. Individuals learn better when they receive inf ...
- winform devexpress 用法汇总
废话不多说先上图 1.封装分页控件 qrcodeOnPage1.SearchData(gridControl2, IDataPage, sWhere, "", "tb_o ...
- IDEAL 热更新
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...
- python笔记——随手记
1.max与min函数的使用min(0)返回该矩阵中每一列的最小值 min(1)返回该矩阵中每一行的最小值 max(0)返回该矩阵中每一列的最大值 max(1)返回该矩阵中每一行的最大值2.argso ...
- c语言,中缀表达式转后缀表达式并计算
//c语言中缀表达式计算 #include <stdio.h> #include <stdlib.h> #include <string.h> #include & ...