1.数据库(DataBase 简称DB)
用于存储和管理数据的仓库
特点:1.持久化存储数据。
2.方便存储和管理数据
3.使用统一的方式操作数据库——sql语句
控制台进入mysql:mysql -uroot -p+密码
卸载:1.打开mysql安装目录下的my.ini文件下的 datadir="";
Mysql服务的启动:使用管理员打开cmd
net start mysql:启动mysql的服务
net stop mysql:关闭mysql服务
访问其他的mysql:mysql -h+ip地址 -uroot -p连接目标的密码
2.Mysql的目录结构
1.Mysql的安装目录
2.Mysql的数据目录
3.SQL
1.什么是sql
定义了操作所有关系型数据库的规则。
关系型数据库:基于一张二维表来存储数据的数据库
SQL通用语法:
1.SQL语句可以单行或多行书写,以分号结尾
2.可使用空格和缩进来增强语句的可读性
3.Mysql数据库的SQL语句不区分大小写,关键字建议使用大写区分
4.3种注释
*单行注释:-- 注释内容 或 # 注释内容
*
展示所有数据库:SHOW DATABAES
数据库调优:
4.SQL语句的分类
DDL:操作数据库表
DQL:查询表数据
DML:增删改表中的数据
DCL:权限、安全访问的处理
5.DDL:操作数据库、表
1.操作数据库:CRUD
1.Create:创建
create database 数据库名
*创建数据库,判断不存在,再创建:
*create database if not exists 数据库名称
create database if not exists 数据库名称 character set 字符集名称
2.Retrieve:查询
*查询所有数据库的名称
*SHOW DATABASES
*查询某个数据的字符集
*SHOW CREATE DATABASE 数据库名
3.Update:修改
*修改数据库的字符集
alter database 数据库名 character set 字符集名称(utf8)
4.Delete:删除
*删除数据库
*Drop database
*判断数据库是否存在,再删
*Drop database if exists 数据库名称
5.使用数据库
*查询当前正在使用的数据库名称
*select database();
*使用数据库
*use 数据库名称;
2.操作表
1.Create:创建
create table 表名(列名1 数据类型1,
...
列名2 数据类型2
);
复制表:create table 表名 like 被复制的表名
*数据类型:
1.date 年月日
2.datetime:年月日时分秒
3.timestamp:时间戳类型 年月日时分秒 自动生成
2.Retrieve:查询
*查询所有表名称
*show tables;
*查询表结构
*desc 表名;
3.Update:修改
1.修改表名
alter table 表名 rename to 新的表名;
2.表的字符集
alter table 表名 character set 字符集名称;
3.添加列
alter table 表名 add 列名 数据类型;
4.修改列名称 类型
alter table 表名 change 列名 新列名 新数据类型;
alter table 表名 modify 列名 新数据类型;
5.删除列
alter table 表名 drop 列名
4.Delete:删除
*drop table if exits 表名;
6.DML:增删改表中的数据:
1.添加数据:
*语法:
*insert into 表名(列名1,列名2,...列名n)values(值1,值2,...值n);
*insert into 表名 values( , , , );
2.删除数据:
delete from 表名 where
删除所有记录:
delete from 表名 不推荐使用。有多少条记录就会执行多少次删除操作
truncate table 表名 推荐使用,效率高,删除表,然后再创建一个一模一样的空表
3.修改数据:
update 表名 set 列名1=值1,...列名n=值2 where
7.DQL:查询表中的记录
1.语法
*select * from 表名;
limit 分页限定
2.去除重复的结果集 distinct
3.如果有null参与的运算,计算结果都为null
*ifnull(表达式1,表达式2)
*表达式1:哪个字段需要判断是否为null
*表达式2:如果表达式1为null则执行表达式2
4.In(集合) null值不能使用= is null
5.模糊查询 like
*_:单个占位字符
*%多个占位字符
CREATE TABLE `Student`(
`s_id` VARCHAR(20),
`s_name` VARCHAR(20) NOT NULL DEFAULT '',
`s_birth` VARCHAR(20) NOT NULL DEFAULT '',
`s_sex` VARCHAR(10)
NOT NULL DEFAULT '',
PRIMARY KEY(`s_id`)
) CHARSET = utf8;
|
|