mysql约束和自动增长

Mysql约束

1、约束是限制条件

2、mysql常用约束

1. 主键约束

创建表,设计主键,要把一些字段(可以是一个字段,可以是多个字段)作为主键,表示这个字段值非空的,唯一的

  • 创建主键语句
  • 创建主键
CREATE TABLE users (
   id INT PRIMARY KEY,
   NAME VARCHAR(100)
)

CREATE TABLE person (
   id INT,
   NAME VARCHAR(100),
   PRIMARY KEY(id)
)

CREATE TABLE book (
  id INT,
  bname VARCHAR(100),
  bno INT
  PRIMARY KEY(id,bno)
)

2. 唯一约束

添加字段值不能重复

  • 使用关键字 unique

创建唯一约束

CREATE TABLE book (
   id INT PRIMARY KEY ,
   bname VARCHAR(100) UNIQUE
)
INSERT INTO book VALUES(1,'java开发')
INSERT INTO book VALUES(2,'php开发')

3. 非空约束

字段必须添加值

创建非空约束

CREATE TABLE orders (
   id INT PRIMARY KEY,
   ordersname VARCHAR(100) NOT NULL
)

4. 缺省约束

添加记录时候,指定默认值,不向字段添加具体数据时候,使用设置默认值

创建缺省约束

CREATE TABLE person (
   id INT PRIMARY KEY,
   pname VARCHAR(100) DEFAULT 'lucy'
)

INSERT INTO person VALUES(1,'jack')
INSERT INTO person(id) VALUES(2)

5. 外键约束

自动增长和索引

1、自动增长

(1)关键字 auto_increment,一般和主键一起使用,要求字段类型是int

CREATE TABLE dept (
  id INT PRIMARY KEY AUTO_INCREMENT,
  dname VARCHAR(100)
)

INSERT INTO dept VALUES(NULL,'安保部')
INSERT INTO dept VALUES(NULL,'财务部')

2、索引

(1)什么是索引

  • 索引是一个单独的、物理的数据库结构,

(2)索引的使用原则:
(1)不过度索引
(2)索引条件列(where后面最频繁的条件比较适宜索引)
(3)索引散列值,过于集中的值不要索引,例如:给性别"男","女"加索引,意义不大

CREATE INDEX 索引名 ON 表名称 (column_name,[column_name...]);

3. 添加记录sql语句

1、添加sql语句语法

  • insert into 表名称(字段名称1,字段名称2…) values(值1,值2…)

2、添加一条记录,可以直接写成value

INSERT INTO dept VALUE(NULL,'研发部')

3、添加多条记录

INSERT INTO dept VALUES(NULL,'外交部'),(NULL,'社区互动部'),(NULL,'运维保障')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值