mysql——约束
非空约束:
create table temp(
id int not null,
name varchar() not null default 'adc',
sex char null
)//给id,name加上非空约束
alter table temp modify sex varchar() not null;//增减非空约束
alter table temp modify sex varchar() default 'adc' null;//取消非空约束并且增加默认值
唯一约束:
create table temp(
id int not null,
name varchar(),
password varcha(),
constraint uq_name_pass unique(name,password)//组合约束,不仅里面的单列不能重复,而且该组合名字也不能重复。constraint:给约束命名
);//建表同时增加约束 name和pass组合不能重复
alter table temp add unique(name,password);//使用add给name和pass增加唯一约束
alter table temp modify name varchar() unique;//使用modify给name增加唯一约束
alter table temp drop index name;//删除约束
主键约束:(每个表只允许一个主键,该主键可以为单列,可以为多列组合的主键,不能为空,不能重复)
create teble temp(
id int primary key,
name varchar()
);
create table temp1(
id int not null,
name varchar(),
pwd varchar(),
constraint p_name_pwd primary key(name,pwd)//组合约束
);//组合约束例如:成绩表(学号,课程号,成绩)
//成绩表中单一一个属性无法唯一标识一条记录,学号和课程号的组合才可以唯一标识一条记录
//所以 学号和课程号的属性组是一个主键
alter table temp drop primary key;//删除主键约束
alter table temp add primary key(name,pwd);//给name和pwd组合增加主键
alter table temp modify id int primary key;//修改列为主键
create table temp(
id int auto_increment primary key,
name varchar()
) ;//auto_increment设置自增,设置自增后就可以不用在插入具体值了
外键:(外键可以重复,可以为空,)
主表:
create table test2(
id int auto_increment primary key,
name varchar()
);
从表:
create table stu(
id int auto_increment,
name varchar(),
constaint p_id primary key(id),
test2_id int references test2(id)
);
或者:
create table stu(
id int auto_increment primary key,
name varchar(),
test2_id int,
foreigh key(test2_id) references test2(id)
//constaint fk_id foreigh key(test2_id) references test2(id)//改约束命名
);
alter table stu drop foreigh key test_id;//删除外键约束
alter table stu add foreigh key(test_id) references test2(id);//增加外键约束
check约束:(不适用mysql)
mysql——约束的更多相关文章
- MySQL 约束的讲解
MySQL 约束 作用:保证数据的完整性和一致性按照约束的作用范围分为:表级约束和行级约束.常见的约束类型包括: Not null(非空约束) Primary key (主键约束) Unique ke ...
- MySQL 约束和数据库设计
1.MySQL 约束: 1.约束的概念: 约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性.唯一性. MySQL中,常用的几种约束: 约束类型: 非空 主键 唯一 外键 默认值 ...
- MySQL 约束
MySQL中约束保存在information_schema数据库的table_constraints中,可以通过该表查询约束信息: 约束主要完成对数据的检验,保证数据库数据的完整性:如果有相互依赖数据 ...
- MySQL约束
MySQL中约束保存在information_schema数据库的table_constraints中,可以通过该表查询约束信息: 常用5种约束: not null: 非空约束,指定某列不为空 uni ...
- SQLServer与MySQL约束/索引命名的一些差异总结
约束是数据库完整性的保证,主要分为:主键/外键/唯一键/默认值/check等类别,约束是一个逻辑概念,表示数据的某些特性(不能为空,唯一,必须满足某些条件等等),索引是一个逻辑与物理概念的结合,逻辑上 ...
- mysql约束以及数据库的修改
一.约束 1.约束保证数据完整性和一致性. 2.约束分为表级约束和列级约束. (1)表级约束(约束针对于两个或两个以上的字段使用) (2)列级约束(针对于一个字段使用) 3.约束类型有: (1)NOT ...
- MySQL 约束、表连接、表关联、索引
一.外键: 1.什么是外键 2.外键语法 3.外键的条件 4.添加外键 5.删除外键 1.什么是外键: 主键:是唯一标识一条记录,不能有重复的,不允许为空,用来保证数据完整性. 外键:是另一表的唯一性 ...
- mysql 约束和外键约束实例
1.约束保证数据的完整性和一致性. 2.约束分为表级约束和列级约束.(根据约束所针对的字段的数目的多少来决定) 列级约束:对一个数据列建立的约束 表级约束:对多个数据列建立的约束 列级约束即可以在列定 ...
- MySQL——约束(constraint)详解
该博客说说关于数据库中一个重要的知识点——约束 一.什么是约束约束英文:constraint 约束实际上就是表中数据的限制条件 二.约束作用表在设计的时候加入约束的目的就是为了保证表中的记录完整和有效 ...
- MySQL约束笔记
MySQL 查看约束,添加约束,删除约束 添加列,修改列,删除列 · 查看表的字段信息:desc 表名; · 查看表的所有信息:show create table 表名; 添加主键约束:alter t ...
随机推荐
- 通过TLS回调函数的反调试
下面是TLS数据结构的定义 typedef struct _IMAGE_TLS_DIRECTORY { DWORD StartAddressOfRawData; DWORD EndAddressOfR ...
- 原生JS写的ajax函数
参照JQuery中的ajax功能,用原生JS写了一个ajax,功能相对JQuery要少很多,不过基本功能都有,包括JSONP. 调用的方式分为两种: 1. ajax(url, {}); 2. ajax ...
- HDU 1257——最少拦截系统——————【LIS变型题】
最少拦截系统 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Statu ...
- 关于日常使用Azure MySQL中遇到的连接问题以及排查方法分享
由于防火墙问题,TCP keep alive 问题,以及 MySQL 自身的参数问题这三个在使用中比较常见,所以今天就分享下自己找到的排查方法. 今天先聊一聊防火墙问题 大多数人在第一次创建 MySQ ...
- 数组和矩阵(2)——Reshape the Matrix
In MATLAB, there is a very useful function called 'reshape', which can reshape a matrix into a new o ...
- 正则表达式验证问题(用户名、密码、email、身份证
实现的代码如下: <html> <head> <meta charset="UTF-8"> </head> <body> ...
- 在Eclipse安装Genymotion插件的经验心得
个人心得分享,不当之处还请指正. Eclipse自带的Android模拟器已经无力吐槽了,新手刚上手时或许配置完环境已经精疲力尽了,或许还沉浸在开发成功的喜悦当中,对AVD模拟器的运行情况关注不大,渐 ...
- Android 第三方类库简单使用之EventBus
Android 第三方类库之EventBus 1 PS 工欲善其事必先利其器. Eventbus也是一款在开发中常用的利器 这篇也对EventBus的简单介绍和使用,与之前个xutils介绍的级别一样 ...
- Resharper F12下载dll源码
原作者:赵青青 原文链接:Visual Studio(VS) F12 查看DLL源代码 Dot Peek 今天在调试时,又有这个需求,想查看dll的源代码,我决定从dot peek这个程序入手去查找相 ...
- win7下tomcat5.5无法通过ip和127.0.0.1访问的解决方法
解决办法:找到tomcat5.5目录下的conf\server.xml文件,原文如下: <Connector port="8080" maxHttpHeaderSize=&q ...