MySQL的数据库操作


注意:SQL语句要在每句末尾加分号

一.数据库操作

1.创建数据库

create database blog(数据库名称) default charset=‘utf8’; #default charset 设置编码格式

2.查看数据库

show databases; #显示当前所拥有的所有数据库

3.切换数据库

use blog(任意的数据库名称); #切换或者进入指定的数据库

4.查看当前所使用的数据库

select database();

5.删除数据库

drop database blog(任意的数据库名称);

数据库操作脑图:
在这里插入图片描述

二.表操作

  • 一个数据库就是一个完整的业务单元,可以包含多张表,数据被存储在表中;
  • 在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,包括数据字段的类型、约束。
    补充::修饰变量的键
1)字段类型

在MySQL中包含的数据类型很多,这里主要列出常用的几种:

  • 数字:int,decimal,float
  • 字符串:varchar,text
  • 日期:datetime
  • 布尔:bool
2) 约束
  • 主键 primary key
  • 非空 not null
  • 唯一 unique
  • 默认 default
  • 外键 foreign key
  • 自动增长 auto_increment

1.查看当前数据库中所有表

show tables;

2.创建表

create table 表名(列及类型);
如:

create table userinfo(
       ->username varchar(20) not null unique comment '添加描述 ',
       ->password varchar(20) not null);
#创建表有两列信息:username,password
#username的类型为字符串,字长为20个字节以内的,不可为空,唯一的

char[10]和varchar[10]的区别:
(1)首先明确的是,char的长度是不可变的,而varchar的长度是可变的,
(2)定义一个char[10]和varchar[10],如果存进去的是‘abcd’,那么char所占的长度依然为10,除了字符‘abcd’外,后面跟六个空格,而varchar就立马把长度变为4了,取数据的时候,char类型的要用trim()去掉多余的空格,而varchar是不需要的,
(3)char的存取数度还是要比varchar要快得多,因为其长度固定,方便程序的存储与查找;但是char也为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符占据空间,可谓是以空间换取时间效率,而varchar是以空间效率为首位的。
(4)char的存储方式是,对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节;而varchar的存储方式是,对每个英文字符占用2个字节,汉字也占用2个字节,两者的存储数据都非unicode的字符数据。

3.查看表内容

select * from userinfo;*

4.查看表结构

desc userinfo;

5.查看创建当前表的sql语句

show create table userinfo;

5.插入

insert (into) userinfo value( ’ ‘,’ ')

6.修改表

alter table userble add gender varchar(3)#添加新的一列
                    chanage gender sex varchar(3)#将gender列修改为sex
                    drop sex;    #删除sex这一列
                     

7.更改表名

rename table 原表名 to 新表名;

8.删除表

drop table userinfo;

表的主要操作如下:
在这里插入图片描述

三.数据操作

1.创建表结构

create table users(
id int primary key auto_increment,
username varchar(20) not null unique,
passwd varchar(20) not null )

2.查看表users的数据,此时为空

select * from users;
select * from users where username='user1';#查看表users中内容为‘user1’对应的所有信息

3.向表中增加数据

insert into users values('1','user1','999');  #全列插入
insert into users(username) values('user2'); #针对username这一列插入内容为‘user1’,其余列自动插入默认值
insert into users(username) values('user3'),('user4');#针对username这一列批量插入内容分别为‘user3’和‘user4’两行,其余列自动插入默认值

4.更新表中数据

update users set passwd='666' where username='user2';# 将表users中user2对应的passwd修改为‘666’

5.删除表中数据信息

delete from users where username='user4';#删除表users中user1的所有数据信息

6.逻辑删除

alter table users add isdelete bit default 0;
update users isdelete=1 where username='user4';
#向表users中添加isdelete代码,isdelete为1 时删除,删除user4相关的所有数据信息

查看文件的大小:du -sh 文件名

7.数据备份与备份恢复

mysqldump -uroot -pwestos 要备份的文件的数据库名>新的备份文件.sql  #备份
mysql -uroot -pwestos 本地存在的数据库名<备份文件.sql #这里的数据库名指要将备份恢复到的数据库,备份文件.sql前面加绝对路径

数据操作如下:
在这里插入图片描述
数据备份与恢复如下:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值