MySQL数据库操作

数据库概念

数据库就是存放数据的仓库,他是一个按照数据结构来存储和管理数据的计算机软件系统。

MySQL数据库是一种C/S模型(即客户端和服务器模型),客户端通过用户名,密码登录连接服务器,连接成功后,才可以进行数据库操作(增删改查等)

RDBMS:关系数据库管理系统(relational data base management system)
SQL :结构化查询语言

数据库分类

关系型数据库

关系模型就是指二维表格,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。

关系型数据库的核心元素:

数据行(一条记录),数据列(字段),数据表(数据行的集合),数据库(数据表的集合)

关系型数据库的产品

Oracle , MySQL(免费), sqlite,
DB2,Microsoft SQL server

非关系型数据库

不是以数据表的形式记录数据的数据库,主要产品有 memcache, redis , mongodb ,hbase

mysql 的安装和设置

这里介绍Ubuntu上的MySQL安装。不同发行版本安装方式可能有所不同。

安装MySQL

安装操作要在管理员身份下运行:
执行apt install mysql-server 安装。
在这里插入图片描述由于我之前已经安装过了,所以这里不会有相应的信息,对于没有安装过得猿(媛),只要按照提示确定就好了。

初始化配置

初始化配置使用命令: mysql_secure_installation

  1. 1 设置数据库不进行密码强校验(输入N表示不设置密码强校验)
    在这里插入图片描述

1.2设置root管理员密码,这里要区别于我们的系统管理员密码,这个密码是数据库管理员的。密码输入不会回显,根据提示输入两遍
在这里插入图片描述
1.3设置是否要删除匿名用户,这里不删除
在这里插入图片描述1.4设置是否允许root用户远程登录,这里设置允许
在这里插入图片描述

1.5设置是否删除test库,这里选择不删除
在这里插入图片描述

1.6设置修改的权限立即生效,此时需哦有配置初始化完成
在这里插入图片描述

数据库服务启动停止

检查服务器状态命令:

service mysql status
systemctl status mysql.service
在这里插入图片描述重启|停止|启动,数据库命令(数据库的启停命令要在管理员模式下执行)

重启: //etc/init.d/mysql restart
停止: //etc/init.d/mysql stop
启动:  //etc/init.d/mysql start

或者执行以下命令

service mysql restart //重启
service mysql stop //停止
service mysql start //启动
连接数据库

== mysql -uroot -p==
‘’此命令也需要在管理员模式下执行’’
在这里插入图片描述退出执行== mysql> quit==

配置文件位置

配置文件在==/etc/mysql/mysql.conf.d/mysqld.conf==
需要修改的话要在配置文件中修改

安装C/C++开发库

apt install libmysqlclient-dev

数据库的基本操作

数据库的登录及退出

连接数据库:

mysql -u用户名 -h主机地址(省略代表本机) -p密码
mysql -uroot -p

退出数据库

exit
quit
ctil+d

查看所有数据库

//注意所有的SQL命令结尾都要跟上“;”号
show databases;
在这里插入图片描述

显示数据库版本信息

select version();
在这里插入图片描述

显示时间

select now();

创建数据库

create database 数据库名
create database 数据库名 charset=utf8;

查看创建数据库的语句

show create database 数据库名
又上可以得出,查看建表的命令语句也可以用这个

查看当前使用的数据库

==select database();==null代表没有选择使用的数据库

查看当前用户

select user();

使用某个数据库

use 数据库名;

删除数据库

==drop database 数据库名; ==

数据表的操作

查看数据库中的所有表
创建表

数值类型:
在这里插入图片描述字符串类型:
在这里插入图片描述日期类型:
在这里插入图片描述

创建表的命令:

==create table 数据表的名字(字段 类型 约束,字段,类型,约束); ==

未使用约束实例:
create table student(id int,name varchar(30));
对id字段使用约束实例:
create table stucent(id int primary key not null auto_increment,name varchar(30));
执行以上事例,创建student1,student2 表。
在这里插入图片描述

约束

主键: primary key:物理上存储的顺序
非空: not null:此字段不允许填写空值
唯一:unique:此字段的值不允许重复
默认:default:当不填写此值时会使用默认值,如果填写,以填写为准
外键:foreign key:对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,如果存在则写成功,如果不存在则写失败。虽然外键约束可以保证数据的有效性,但是在进行数据的crud(增加,修改,删除,查询时),都会降低数据库的性能。
自动增长:auto_increment:表示自动增长

查看表结构

desc 表名;
在这里插入图片描述

查看创建表的命令

show create table 表名;
在这里插入图片描述

向表中插入,更新,删除数据

insert into 表名 value(字段1的值,字段2的值…)
使用select * from 表名命令查看当前数据表的信息,在使用update 表名 set 字段=“新值” where id=‘要更改的字段主键’来更新表中的信息
在这里插入图片描述使用
delete
删除表中的行,可以删除指定行,也可以删除所有行
在这里插入图片描述
在这里插入图片描述

查看表中数据

select * from 表名
也可以指定查询某几个字段:select id,name from student;

mysql中的注释使用‘–’
在这里插入图片描述

修改表的名字

==alter table 原表名 rename 新表名 ==

修改字段信息

添加字段alter table 表名 add 列名 类型;
重新命名alter table 表名 change 原字段名 新字段名 类型及约束;
不改名字alter table 表名 modify 列名 类型及约束;
删除字段alter table 表名 drop 列名;
修改表的储存引擎:alter table表名engine myisam
常用引擎myisam,innoDb

删除表

drop table 表名;

mysql查询操作

基本查询

查询所有字段
select * from 表名;
查询指定字段:
select 列1,列2,… from 表名;
select 表名.字段 … from 表名;
使用as给字段取别名:
select 字段 as 名字 … from 表名;
消除重复行:
select distinct addr from 表名;

条件

在这里插入图片描述在这里插入图片描述%替换一个或多个,_替换一个
在这里插入图片描述
在这里插入图片描述

排序

在这里插入图片描述

聚合函数

在这里插入图片描述

分组

在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值