数据库约束

表完整性约束

作用:用于保证数据的完整性和一致性

约束条件 说明
PRIMARY KEY (PK):标识该字段为该表的主键,可以唯一的标识记录,不可以为空UNIQUE + NOT NULL
FOREIGN KEY (FK):标识该字段为该表的外键,实现表与表(父表主键/子表1外键/子表2外键) 之间的关联
NULL:标识是否允许为空,默认为NULL。
NOT NULL:标识该字段不能为空,可以修改。
UNIQUE KEY (UK):标识该字段的值是唯一的,可以为空,一个表中可以有多个UNIQUE KEY
AUTO_INCREMENT:标识该字段的值自动增长(整数类型,而且为主键)
DEFAULT:为该字段设置默认值
UNSIGNED:无符号,正数

1.主键 每张表里只能有一个主键,不能为空,而且唯一。 定义两种方式:
mysql> create table t7(hostname char(20) primary key,ip char(150));
mysql> create table t9(hostname char(20),ip char(150),primary key(hostname));
删除主键
mysql> alter table t7 drop primary key;

auto_increment--------自增 (每张表只能有一个字段为自曾) (成了key才可以自动增长) 
mysql> CREATE TABLE department3 ( 
    -> dept_id INT PRIMARY KEY AUTO_INCREMENT, 
    -> dept_name VARCHAR(30), 
    -> comment VARCHAR(50) 
    -> );
设置唯一约束 UNIQUE 
mysql> CREATE TABLE department2 ( 
    -> dept_id INT, 
    -> dept_name VARCHAR(30) UNIQUE, 
    -> comment VARCHAR(50)
    -> );

插入数据的时候id和comment字段相同可以插入数据,如果有相同的名字不唯一。所以插入数据失
败。

  1. 是否允许为空,默认NULL,可设置NOT NULL,字段不允许为空,必须赋值
  2. 字段是否有默认值,缺省的默认值是NULL,如果插入记录时不给字段赋值,此字段使用默认值
    sex enum('male','female') not null default 'male' #只能选择maie和female,不允许为
    空,默认是male
    age int unsigned NOT NULL default 20 #必须为正值(无符号) 不允许为空 默认是20
    mysql> create table t5(id int(5),name varchar(10),age int(5) not null default 20);

指定字符集:

修改字符集 :在创建表的最后面指定一下: default charset=utf8 #可以指定中文

注意

如果报错进入server端服务器登陆mysql执行:
mysql> use mysql
mysql> update user set host = '%' where user = 'root';
mysql> flush privileges;

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • /*CREATE TABLE student3 (id int, -- 编号name varchar(20), ...
    小灰灰爱学习阅读 3,649评论 0 0
  • MYSQL数据库约束类型 一.主键约束(primary key) 主键约束要求主键列的数据唯一,并且不能为空。主键...
    25岁学Python阅读 2,701评论 0 0
  • MySQL5.6从零开始学 第一章 初始mysql 1.1数据库基础 数据库是由一批数据构成的有序的集合,这些数据...
    星期四晚八点阅读 4,889评论 0 4
  • 什么是数据库? 数据库是存储数据的集合的单独的应用程序。每个数据库具有一个或多个不同的API,用于创建,访问,管理...
    chen_000阅读 9,480评论 0 19
  • 文字的魅力 同散文一样 分为形与神 形为本 神为引 遗憾的是在我这里 文字是枯草 没有生命却又固执存体
    五色浮元子_阅读 1,409评论 0 1

友情链接更多精彩内容