MySQL操作之数据定义语言(DDL)(二)

序号类型地址
1MySQLLinux(centos 7.5)服务器安装MySQL5.7
2MySQLLinux服务器安装MySQL8.0
3MySQLMySQL操作之概念、SQL约束(一)
4MySQLMySQL操作之数据定义语言(DDL)(二)
5MySQLMySQL操作之数据操作语言(DML)(三)
6MySQLMySQL操作之数据查询语言:(DQL)(四-1)(单表操作)
7MySQLMySQL操作之数据查询语言:(DQL)(四-2)(多表查询)
8MySQLMySQL操作之数据控制语言:(DC)(五)
9MySQLMySQL操作之数据库函数
10MySQLMySQL管理之数据类型
11MySQLMySQL管理之索引
12MySQLMySQL管理之事务管理
13MySQLMySQL管理之存储过程
14MySQLMySQL管理之视图
15MySQLMySQL管理之数据备份与还原
16MyBatisMyBatis从入门到多表关联
17MyBatisMyBatis常用方法
18MyBatisMybatis逆向工程的使用(附文件地址)
19MyBatisspring boot连接Mybatis数据库的配置文件(MySql、SQLserver、Oracle)
20MyBatis-PlusMybatis-Plus使用案例(包括初始化以及常用插件)
21MyBatis-PlusMybatis-Plus(Service CRUD 接口)
22MyBatis-PlusMybatis-plus 4种条件构造器方式
23MyBatis-PlusMybatis-Plus 执行自定义SQL
24MyBatis-PlusMyBatis-plus配置自定义SQL(执行用户传入SQL)
25MyBatis-PlusMybatis-Plus(连接Hive)
26MyBatis-PlusMybatis-Plus 代码生成器


简称DDL(Data Defifinition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等。

一、数据库操作(create、use、drop、use)

创建数据库(create):

create database 数据库名 character set 字符集;

查看创建好的数据库test信息

show create database test; 查看数据库的定义的信息

删除数据库(drop):

drop database web_2;

使用数据库(use):

use 数据库名

修改数据库编码格式(改为gbk编码)

ALTER DATABASE test DEFAULT CHARACTER SET gbk COLLATE gbk_bin;

二、数据表操作(create、show、drop、alter、rename)

2.1创建查看表结构

创建表(create):

CREATE TABLE category (
 cid INT primary key, #分类ID

建表时复制另一表数据

create table emp1 as select * from employees;

查看表列表(show):

show tables;

查看建表信息

SHOW CREATE TABLE 表名;

使用Describe语句查看数据表(DESCRIBE)

DESCRIBE 表名;
DESC 表名;

在这里插入图片描述

其中:

  • NULL:表示该列是否可以存储NULL值。
  • Key:表示该列是否已经编制索引。
  • Default:表示该列是否有默认值。
  • Extra:表示获取到的与给定列相关的附加信息。

2.2修改表结构

删除表(drop)

DROP TABLE tb_grade;

修改表结构格式(alter):

ALTER TABLE category+(add,modify,change,drop)(增加,修改属性,更新名,删除)

修改表名(rename)

方式一:

RENAME TABLE category TO category2;

方式二:

ALTER TABLE tbbb RENAME TO tb_grade;

三、数据表中列操作(add、drop、change、modify)

添加列(add)

ALTER TABLE 表名 ADD 字段名 约束;
ALTER TABLE category add `desc` VARCHAR(20);

删除列(drop)

ALTER TABLE 表名 DROP 字段名;
ALTER TABLE category DROP description;

修改列名(change)

ALTER TABLE category change `desc` description VARCHAR(30);
alter table 表名 change 旧列名 新列名 类型(长度) 约束

修改列的类型长度及约束(modify)

ALTER TABLE 表名 MODIFY 字段名 约束;
ALTER TABLE category modify `desc` VARCHAR(50) NOT NULL;

修改字段的排列顺序

#将列2放在首位
ALTER TABLE 表名 MODIFY 列名2 约束 FIRST;
#将列1放在列2后面
ALTER TABLE 表名 MODIFY 列名1 约束 AFTER 列名2;
ALTER TABLE tb_grade MODIFY address VARCHAR(32) FIRST;
ALTER TABLE tb_grade MODIFY grade VARCHAR(32) AFTER address;

四、表的约束

约束条件:是针对表中字段进行限制,保证数据表中数据的正确性和唯一性。

约束条件说明
Primary Key主键约束,用于唯一标识对应的记录
Foreign Key外键约束
Not Null非空约束
Unique唯一性约束
Default默认值约束,用于设置字段的默认值

4.1、主键约束(Primary Key)

  • 为了快速的查询表中某条信息,设置主键来实现。

  • 通过Primary Key来定义,唯一标识表中的记录。

  • 分为单字段主键和多字段主键。

单字段主键:

由一个字段构成的主键:

字段名 数据类型 PRIMARY KEY
CREATE TABLE example (
  id INT PRIMARY KEY,
  name VARCHAR(32)
)

多字段主键:

PRIMARY KEY(字段1,字段2,...,字段n)
CREATE TABLE example2 (
  id INT,
  p_id INT,
  name VARCHAR (32),
  address VARCHAR (32),
  PRIMARY KEY (id,p_id)
)

4.2 非空约束( NOT NULL)

  • 字段的值不能为NULL。
  • 通过 NOT NULL进行定义
字段名 数据类型 NOT NULL;
CREATE TABLE example3 (
  id INT PRIMARY KEY,
  name VARCHAR (32) NOT NULL 
)

4.3 唯一约束(UNIQUE)

  • 用于约束保证数据库中字段的唯一性(即表中的字段不能重复出现)
  • 使用UNIQUE进行约束
字段名 数据类型 UNIQUE;
CREATE TABLE example03 (
  id INT PRIMARY KEY,
  name VARCHAR ( 32 ) UNIQUE
)

4.4 默认约束(DEFAULT)

  • 用于给数据库中的字段指定默认值。
  • 当插入一条数据时,假如没有赋值,数据库系统会自动为这个字段插入默认值。
  • 通过DEFAULT关键字定义的。
字段名 数据类型 DEFAULT 默认值;
CREATE TABLE example04 (
  id INT PRIMARY KEY,
  name VARCHAR ( 32 ),
  age INT ( 16 ) DEFAULT 18
)

4.5 设置表的字段值自动增加

  • 自动生成唯一ID。
  • 使用AUTO_INCREMENT约束来实现。
  • 默认情况下是从1开始自增的。
字段名 数据类型 AUTO_INCREMENT;
CREATE TABLE example05 (
  id INT PRIMARY KEY auto_increment,
  name VARCHAR (32)
)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ha_lydms

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值