MYSQL

MYSQL

MYSQL是数据库的一种 所谓数据库就是一种特殊的文件,其中存储着需要的数据 分为关系型数据库和非关系型数据库
而MYSQL数据库是其中的关系型数据库

SQl

SQL是结构化查询语言,是一种用来操作RDBMS的数据库语言,当前关系型数据库都支持使用SQL语言进行操作,也就是说可以通过 SQL 操作 oracle,sql server,mysql,sqlite 等等所有的关系型的数据库

MYSQL特点

使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性

支持多种操作系统,如Linux、Windows、AIX、FreeBSD、HP-UX、MacOS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris等

为多种编程语言提供了API,如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等

支持多线程,充分利用CPU资源

优化的SQL查询算法,有效地提高查询速度

提供多语言支持,常见的编码如GB2312、BIG5、UTF8

提供TCP/IP、ODBC和JDBC等多种数据库连接途径

提供用于管理、检查、优化数据库操作的管理工具

大型的数据库。可以处理拥有上千万条记录的大型数据库

支持多种存储引擎

MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库

MySQL使用标准的SQL数据语言形式

Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统

在线DDL更改功能

复制全局事务标识

复制无崩溃从机

复制多线程从机

MYSQL安装

服务器端安装代码:sudo apt-get install mysql-server

图形化安装:https://www.navicat.com.cn/

数据库操作

查看所有数据库
show databases; (分号一定要加)

使用数据库
use 数据库名;

查看当前使用的数据库
select database();

创建数据库
create database 数据库名 charset=utf8;
举例:
create database ycc charset=utf8

删除数据库
drop database 数据库名;
举例:
drop database ycc;

数据表

查看当前数据库中所有表
show tables;

查看表结构
desc 表名;

创建表
CREATE TABLE table_name(
column1 datatype contrai,
column2 datatype,
column3 datatype,

columnN datatype,
PRIMARY KEY(one or more columns)
);

修改表-添加字段
alter table 表名 add 列名 类型;
例:
alter table students add birthday datetime;

修改表-修改字段:重命名版
alter table 表名 change 原名 新名 类型及约束;
例:
alter table students change birthday birth datetime not null;

修改表-修改字段:不重命名版
alter table 表名 modify 列名 类型及约束;
例:
alter table students modify birth date not null;

修改表-删除字段
alter table 表名 drop 列名;
例:
alter table students drop birthday;

删除表
drop table 表名;
例:
drop table students;

查看表的创建语句
show create table 表名;
例:
show create table classes;

数据库操作

基本查询-查询所有
select * from 表名;

指定列查询
select 字段名1, 字段名2 from 表名;

添加数据
insert into 表名 values(添加的数据);

修改数据
update 表名 set 字段=值 where 条件;

删除
delete from 表名 where 条件;

数据库查询

查询所有字段
select * from 表名;

别名查询
select 字段名 as 别名 from 表名;

消除重复行
select distinct 字段名 from 表名;

比较运算符查询
select * from 表名 where 查询的条件 例如: age > 18;

逻辑运算符查询
select * from 表名 where id > 3 and gender=2;
select * from 表名 where id > 3 or gender=2;

模糊查询
查询姓李的
select * from 表名 where name like “李%”;

非连续范围查询
查询年龄为18和34的
select * from 表名 where age in (18, 34);
1
2
连续范围查询
查询年龄在18到34之间的
select * from 表名 where age between 18 and 34;

排序
select * from 表名 order by 字段名 升序 asc 降序 desc

聚合函数
总数
select count(*) from 表名;
求和
select sum(字段名) from 表名;
最大值
select max(字段名) from 表名;
最小值
select min(字段名) from 表名;
平均值
select avg(字段名) from 表名;

分组查询
select * from 表名 group by 字段名

分页查询
select * from 表名 limit 当前第几页, 每页显示多少数据

连接查询
内连接
select * from 表名1 inner join 表名2 on 表名1.字段名 = 表名2.字段名
左连接
select * from 表名1 left join 表名2 on 表名1.字段名 = 表名2.字段名
右链接
select * from 表名1 right join 表名2 on 表名1.字段名 = 表名2.字段名

事务四大特性

原子性:一个事务的不可分割最小单位,操作要么全部提交成功,要么全部失败回滚
隔离性:一个事务在没有提交之前对另一个事务是不可见的
一致性:一个事务执行之前和执行之后都必须处于一致性状态,也就是说数据不会被破坏
持久性:一旦数据被调教,那么数据的存储将会是永久性的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值