数据库的基本使用

Posted  落禅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库的基本使用相关的知识,希望对你有一定的参考价值。

数据库的基本使用

文件保存的缺点

文件的安全性问题

文件不利于数据查询和管理

文件不利于存储海量数据

文件在程序中控制不方便

数据库存储介质:磁盘,硬盘

数据库相关操作
启动mysql
systemctl start mysqld
停止mysql
systemctl stop mysqld
连接mysql服务器
mysql -h “127.0.0.1” -P3306 -uroot -p
-h 指定要连接的mysql服务器,例如上面连接本地服务器127.0.0.1
-P 指定访问的端口(默认mysql端口为3306,一般会更改)
-p后面可以跟登录密码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZlK9nQcp-1649593813255)(https://raw.githubusercontent.com/qingyan520/Cloud_img/master/img/image-20220410195828223.png)]

看到这个图就代表成功进入mysql了,如果想退出,直接quit退出,如下图:

当然本地可直接输入下面命令登录

mysql -uroot -p

数据库的基本使用
创建数据库
create database test;

//使用编码格式为utf8创建数据库
create database test charset=utf8;

//校验规则也为utf8
create database test charset=utf8 collate utf8_general_ci;
//创建一个数据库,本质就是在数据库的路径下新建一个目录

上面的命令用来创建名为test的数据库,其中将charset(编码格式)设置为utf8,校验编码也设置为utf8(注意以‘;’结尾)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dCJjevmr-1649593813257)(https://raw.githubusercontent.com/qingyan520/Cloud_img/master/img/image-20220410200608715.png)]

查看已经建立的数据库
show databases;

查看建立数据库的语句
show create database test;

修改数据库
alter database test charset=utf8;

这里的修改主要指的是对数据库编码格式的修改

数据库的使用
use test;
查看数据库连接情况
show processlist;

数据库的备份
create table if not exists 'students'(
	id int,
	bane varchar(20),
)enginInnoDB default charset=utf8;
mysqldump -P3306 -uroot -p -B test >100.sql (存放路径)

默认会在当前目录下生成一个100.sql文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nVrWRiGn-1649593813259)(https://raw.githubusercontent.com/qingyan520/Cloud_img/master/img/image-20220410201640024.png)]

所谓的备份本质是将历史上对mysql指定的数据库的所有历史操作都做一下备份

binlog会全量记录对指定数据库的所有的操作

连接进入数据库之后输入下面命令即可恢复

source ./100.sql;
查看字符集支持
show charset
查看字符集校验规则
show collate

校验规则对数据库的影响:在进行数据对比时所采用的编码格式

查看系统默认字符集及校验规则

show variables like 'character_set_database';
show variables like 'collation_database';
存储引擎

mysql存储引擎是插件shi存储引擎,支持多种存储引擎

查看存储引擎
show engines;
删除数据库
drop database test;
表的相关操作
创建数据库表
create table table_name(
	field1 datatype,
	field2 datatype,
	field3 datatype
)charact set=字符集 collate 校验规则 engine=存储引擎;

例如:

use test;
create table if not exists student(
	id int,
	name varchar(30),
	gender varchar(2),  
);
创建表之前一定要选择数据库 use 数据库名称,相当于进入新建的数据库目录下,创建表相当于在指定的数据库目录下,新建普通文件即可
展示所有表
show tables;
展示创建表的语句
show create table stdents;
展示表结构
desc students;
插入数据
insert info students(id,name,gender) values(1,"张三","男");
insert info students(id,name,gender) values(1,"李四","女");
展示表中信息
select * from students

每一行是一条记录

一列代表一个属性,列名称不能重复

样例

create table users(
	id int,
	name varchar(20) comment '用户名',
	password char(32) comment '密码是md5的值',
	birthday date coment '用户的生日'
)character set utf8 engine MyIsam;
修改表的属性
//向表中添加一个字段
alter table tablename add path varchar(128) comment '用户的照片路径';

insert into user (id,name,passwd,birthday,path) value (1,'王五','ss','2001-01-01','./Source')

//删除某一列
alter table tablename drop path;

//在id列后面添加一列path
alter table tablename add path varchar(128) comment '用户的照片路径' after id;


//修改passwd列的属性,覆盖式的modify
alter table user modify passwd char(50);


//删除某一列,这一列数据都没有了
alter table usr drop birthdy;


修改表名
alter table user rename vip;


//修改列名
alter table user change passwd passwd password char(50)  comment '用户的密码';

alter table 表名 add/modify/drop 列+列属性

alter table 表名 rename 新名字

alter table 表名 change 旧列名称 新列名称 +列属性

删除表
drop table user;

sr drop birthdy;

修改表名
alter table user rename vip;

//修改列名
alter table user change passwd passwd password char(50) comment ‘用户的密码’;


> alter table 表名 add/modify/drop 列+列属性
>
> alter table 表名 rename 新名字
>
> alter table 表名 change 旧列名称 新列名称 +列属性
>

删除表
drop table user;

以上是关于数据库的基本使用的主要内容,如果未能解决你的问题,请参考以下文章

如何过滤文本文件中以大写字母开头并以正整数结尾的行,并在 linux 的命令行上使用正则表达式?

str的基本操作

在Java中将字符串拆分为字符串和int [重复]

2.基本数据类型

在C#中将Excel文件插入数据库

java中将Label添加到GridLayout类型的JPanel里,label太靠左怎么往右调整到居中?如图