数据库操作代码

1、直接创建数据库

create database 数据库名;

2、判断数据库是否存在,如果存在则不创建,不存在则创建

create database if not exists 数据库名;

3、创建数据库并指定字符集 create database 数据库名

character set 字符集;

4、查看所有的数据库

show databases;

5、查看某个数据库的定义信息

show create database 数据库名;

6、修改数据库字符集

alter database 数据库名 default character set 字符集;

7、删除数据库

drop database 数据库名;

注意:数据库删除后,将无法恢复,因此要谨慎操作。

8、查看正在使用的数据库

select database();

9、使用/切换数据库

use 数据库名;

后端学习之数据库设计DDL与数据类型_字符串

MySQL客户端工具

DataGrip/IDEA

后端学习之数据库设计DDL与数据类型_字符串_02

创建操作的数据源。下载所需的驱动,测试链接即可。

图形化界面操作,很简单。

后端学习之数据库设计DDL与数据类型_创建数据库_03

表操作

后端学习之数据库设计DDL与数据类型_字符串_04

create table tb_user(
    id int primary key auto_increment comment 'ID, 唯一标识',/*唯一主键,自动增长*/
    username varchar(20) not null unique comment '用户名',/*varchar相当于Java中的Spring*/
    name varchar(10) not null comment '姓名',
    age int comment '年龄',
    gender char(1) default '男' comment '性别'
) comment='用户表';

后端学习之数据库设计DDL与数据类型_创建数据库_05

添加行之后需要上传。

数据类型

主要分为数值类型、字符串类型、日期时间类型。

数值类型

后端学习之数据库设计DDL与数据类型_数据库_06

默认是有符号数

age tinyint unsigned 表示1到255

score double(4,1) 表示100.1这种。

字符串类型

后端学习之数据库设计DDL与数据类型_数据库_07

char(10):表示最多只能有十个字符,超过会报错,不足十个字符,会占用十个。性能高但浪费空间。以空间换时间。

varchar(10):不足十个字符,会占用实际的空间,以时间换空间。

日期时间类型

后端学习之数据库设计DDL与数据类型_创建数据库_08

案例

表结构设计,添加员工信息,并为员工设置初始密码。

后端学习之数据库设计DDL与数据类型_创建数据库_09

后端学习之数据库设计DDL与数据类型_创建数据库_10

后端学习之数据库设计DDL与数据类型_字符串_11

Id设置为自增和唯一

创建时间和更新时间为补充内容。

create table tb_emp
(
    id          int auto_increment comment '主键id'
        primary key,
    username    varchar(20)                  null comment '用户名',
    password    varchar(32) default '123456' null comment '密码',
    name        varchar(10)                  null,
    gender      tinyint unsigned             not null comment '男1女2',
    image       varchar(300)                 null comment '图像url
',
    job         tinyint unsigned             null comment '职位:1班主任,2讲师,3学工主管,4教研主任',
    entrydate   date                         null,
    create_time datetime                     null,
    update_time datetime                     null,
    constraint username
        unique (username)
);