文章目录
MySQL
什么是数据库
数据库是数据的仓库
与普通的数据仓库不同的是,数据库依据数据结构来组织数据,因为数据结构的存在,所以看到的数据是条理化的
数据库和普通文件系统的区别在于:数据库拥有数据结构,都能快速查找对应的数据
常说的XX数据库,其实就是XX数据管理系统:数据库管理系统是一个软件,是数据服务的体现
根据不同数据结构的不同,数据库分为关系型数据库和非关系型数据库
关系型数据库
关系型数据库是依据关系模型创建数据库
关系模型就是一对一,一对多,多对多等关系模型,关系模型就是存储格式是以行列组成的二维表格,所以一个关系模型数据库就是由二维表之间的联系所组成的一个数据组织
关系型数据库可以很好的存储一些关系模型的数据,比如老师对应学生的数据(“多对多”),一本书对应多个作者(“一对多”),一个人对应一个身份证号码(“一对一”)
常见关系型数据库
非关系型数据库
由于关系型太大和复杂,所以一般使用“非关系型数据库”来表示其它类型的数据库
非关系型的模型比如:
- 列模型:存储的数据是一列一列,关系型数据库以一行作为一个记录,列模型数据库以一列为一个记录
- 键值对模型:存储的数据是一个个键值对<k,v>,比如name:|isi还有Java中的Map和JDBC中reduce组合的MapReduce
- 文档类模型:以一个个文档来存储数据,类似于键值对
- 数据库类型:作为大数据开发程序猿,我们还需要了解一种数据库叫做非关系型数据库,也称作NoSQL数据库或者keyValue数据库。存储方式和关系型数据库有很大区别,字面上理解就是可以使用SQL和不可以使用SQL的区别
常见非关系型数据库
MySQL数据库简介
- 所谓安装数据库服务器,只是在机器上装了一个数据库管理程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库
- 为保存应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体的数据
- 数据库服务器、数据库和表的关系如图所示:
SQL分类
- DDL
- 数据定义语言 - Data Definition Language
- 用来定义数据库的对象,如数据表、视图、索引等
- DML
- 数据处理语言 - Data Manipulation Language
- 在数据库表中更新,增加和删除记录
- 如 update, insert, delete
- DCL
- 数据控制语言 – Data Control Language
- 指用于设置用户权限和控制事务语句
- 如grant,revoke,if…else,while,begin transaction
- DQL
- 数据查询语言 – Data Query Language
- select
- 哪些语句属于DDL操作
操作数据库、表、视图的语句,包括修改、删除 - CREATE DATABASE
- CREATE TABLE
- ALTER TABLE
- DROP TABLE
- CREATE VIEW
- ALTER VIEW
- DROP VIEW
- TRUNCATE TABLE
MySQL数据库服务器、数据库和表的关系
-
步骤:登录数据库 => 创建数据库 => 切换到指定数据库 => 创建表 => 使用表
mysql –u用户名 –p密码(DOS窗口作为client)
-
关系:数据库服务器 => 数据库 => 表,从左到右为一对多的关系
-
数据库最小单位:行
创建、查看数据库
- SQL语句:每个命令执行结束加分号结束
查询所有数据库
show databases;
切换数据库
格式:use 库名;
use mysql;
创建数据库
create database [IF NOT EXISTS] 库名;
create database if not exists test;
删除数据库
格式:drop database [IF EXISTS] 库名;
drop database if exists test;
查询数据库创建语句
格式:show 建库语句
show create database if not exists shujia;
创建表
格式:
create table [if not exists] 表名(
字段1 数据类型 字段属性
,字段2 数据类型 字段属性
,……
,字段N 数据类型 字段属性
PRIMARY KEY (`字段1`)
)engine=引擎default charset=编码集;
create table if not exists stu(
id int(11) not null
,name varchar(10)
,sex varchar(10)
,clazz varchar(10)
,job varchar(255) default '没有工作'
,gongzi varchar(255) default '17k'
PRIMARY KEY ('id')
)engine=InnoDb default charset=utf8;
删除表
格式:drop table [if not exists] 表名;
drop table if not exists stu;
查看所有表
show tables;
查看建表语句
格式:show create table 表名;
show create table student;
查看表结构
格式:desc 表名;
desc table;
查看当前在哪个数据库
select database();
查看表所有信息
格式:select * from 表名;
select * from student;
远程连接MySQL数据库
到底啦!给靓仔一个关注吧!💝