一 MySQL
-
数据库:存储数据的仓库,数据是有组织的进行
存储。
-
数据库管理系统:操纵和管理数据库的大型软件
-
SQL:操作关系型数据库的编程语言,定义了一
套操作关系型数据库统一标准。
-
通过SQL操作数据库管理系统,通过系统操
作数据库及数据库里的数据。
二 常见数据库
-
Oracle :收费的大型数据库, Oracle 公司的产
品。
-
MYSQL : 开 源 免 费 、 中 小 型 的 数 据 库 。 2009 年
Oracle 收购 SUN 公司,从 MYSQL6.x 版本开始收费,但
是还有免费的社区版本。
-
SQLServer : MicroSoft 公司收费的中型的数据
库。C# 、 .net 等语言常使用。
-
PostgreSQL :开源免费的中小型数据库,能被苹果
公司大量使用并替换早期的 MySQL 数据库,说明其一
定 有 不 俗 的 表 现 。 在 2023 年 的 数 据 库 排 行 榜 上 ,
PostgreSQL 位居第四位,号称世界上最先进的、最安全
的开源数据库。
-
DB2 : IBM 公司的数据库产品,收费的。常应用在银
行系统中。
-
SQLite : 嵌入式的小型数据库,应用在手机端。
常用数据库: MYSQL , Oracle 。
三 SQL通用语法
-
单行或者多行书写,以分号结束
-
可以使用空格或者缩进来增强语句的可读性
-
mysql数据库中,SQL语句不区分大小写,关键
字建议使用大写
-
注释:
- 单行注释 # –
-
多行注释, /* */
四 DDL语句
数据库
- 查看数据库
show databases; # 查看当前用户的查看当前用户可操作的所
有数据库
- 创建新数据库
CREATE DATABASE [IF NOT EXISTS] 数据库名
[DEFAULT CHARSET utf8mb4];
# mysql8 中创建的数据库默认编码是'utf8mb4'
- 选择数据库
use 数据库名;
# 选择数据库之后可以在其中创建表
select database();
# 查看当前数据库 database() 是一个函数
- 删除数据库
drop database 数据库名;
表管理
- 查看表
show tables;
# 查看当前被选中的数据库中的所有表
- 创建表
CREATE TABLE [IF NOT EXISTS] 表名(
字段名 数据类型 [COMMENT '注释'],字段名 数据类型
)[CHARACTER set 编码格式];
- 查看表结构
describe 表名;
desc 表名;
show create table 表名;
- 删除表
drop table 表名;
用户管理
- 查看当前登录的用户
select user() [from dual];
# 查看当前登录的用户 dual 虚拟表,为了让select语句完整
- 创建新用户
create user 用户名@'ip主机地址' identfied by '密码'
- 修改密码
alter user 用户名@'IP主机地址' identfied by '密码'
- 查询用户信息
select user,host from mysql.user;
- 新用户登录
mysql -u 用户名 [-h ip地址] -p
- 为用户授权
show grants for 用户名@'ip地址';
# 查询用户的权限
grant all on 数据库名.表名 to 用户名@'ip地址';
# all 代表所有权限
# select 查询权限
# insert :插入权限
# update :更新权限
# 授权的新用户需要重新登录才能使用新权限
update 数据库.表名 set host='%' where user='用户名';
- 删除用户
drop user 用户名@'ip地址';