首先了解什么是数据库
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。它是数据管理的有效技术,是由一批数据构成的有序集合,这些数据被存放在结构化的数据表里。数据表之间相互关联,反映客 观事物间的本质联系。数据是数据库中存储的基本对象,是按一定顺序排列组合的物理符号。数据有多种表现形式,可以是 数字、文字、图像,甚至是音频或视频,它们都可以经过数字化后存入计算机。数据库是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并 可被各个应用程序所共享。数据库能有效地帮助一个组织或企业科学地管理各类信息资源。
数据库的分类:网络式、层次式、关系式 三种。
mysql 是由MySQL AB 公司开发 ,目前属于Oracle公司。
mysql的优点:体积小、速度快、总体拥有成本低、开放源代码,其有着广泛的应用,一般中小型网站的开发都选择 MySQL 作为网站数据库。
待安装配置完mysql后 就可以用以下命令来操作,
mysql -u root -p 登录数据库 接下来输入密码就可以使用了
create database 数据库名字; 创建数据库
show databases 数据库名字; 查看数据库
show engines; 查看数据库支持的引擎
drop database 数据库名字; 删除数据库
use 数据库名字; 进入所输入名字的数据库
create table 表名 (列名 列数据类型); 创建数据表
show tables; 查看数据表是否创建成功
desc 表名; 查看表结构是否正确
drop table 表名; 删除指定表
创表的栗子:
CREATE TABLE `think_form` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`content` varchar(255) NOT NULL,
`create_time` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
栗子解析:
• 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
• AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
• PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
• ENGINE 设置存储引擎,CHARSET 设置编码
数据引擎
数据类型有三种
在可能涵盖取值范围的基础上,尽可能选择较小的类型以提高效率和节约存储空间
where语句的条件
最最基础的曾删改查:
两表连接的语法:
select 表名1.字段,表名2.字段 from 表名1 inner join 表名2 on 表名1.字段N=表名2.字段N;
多表连接的语法:
select 表1.字段,表2.字段,表3.字段 from 表1 left join 表2 on 表1.字段N=表2.字段N left join 表3 on 表1.字段N=表3.字段N;
on后面的是关联的字段
触发器
三大类 insert 、delete 、update 、
四要素 监视地点、监视事件、触发时间、触发事件、
基本语法:create trigger 触发器名
after insert on `监听的表名`
FOR EACH ROW 每一行改变时
BEGIN 激发触发器执行的主体
执行的事件(insert 、update 、delete )
END;
删除触发器
drop trigger if exists 数据库名 触发器名;
数据库名,可选项,不填则为当前默认的数据库
if exists 可选项,避免在没有触发器的情况下删除触发器
视图
基本语法:create view 视图名 as select语句;
检查视图:describe 视图名;也可简写desc 视图名;
修改视图:alter view 视图名 as select语句;当基本表的某些字段发生变化时,可以通过修改视图来保持与基本表的一致性。
删除视图:drop view if exists 视图名1,视图名2;
事务
MYSQL 事务处理主要有两种方法:
1、用 BEGIN, ROLLBACK, COMMIT来实现
begin 或 start transaction 显示开启一个事务
commit 或 commit work 提交事务
rollback 或rollback work 撤回修改
2、直接用 SET 来改变 MySQL 的自动提交模式:
set autocommit=0 禁止自动提交
set autocommit=1 开启自动提交
savepoint identifier 创建保存点
release savepoint identifier 删除保存点
rollback to identifier 把事务回滚到标记点
set transaction 用来设置事务隔离级别
四种隔离级别:read uncommitted、 未提交读
read committed、已提交读
repeatable read、可重复读
serializable、串行化
常见的几种约束:
主键、外键、唯一、非空、默认值、
索引的五大类:
普通索引、唯一性索引、主键索引、空间索引、全文索引。
锁