跳到正文
Kale的数字花园
目录 文章
/6 分钟/4 阅读/0 评论

数据库概述

数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以 对数据库中的数据进行增加,修改,删除及查询操作(CRUD)。 1. cmd--> services.msc 打开服务的窗口--> MySQL服务启动

什么是数据库

数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以

对数据库中的数据进行增加,修改,删除及查询操作(CRUD)。

数据库的特点

1. 持久化存储数据的。其实数据库就是一个文件系统 
2. 方便存储和管理数据
	存储数据有一定的格式
	行和列的格式
3. 使用了统一的方式操作数据库 
	使用图形界面的形式查看数据
	使用sql语言进行查看或管理数据

常见的数据库

关系型数据库 描述
MySQL 开源免费的数据库,中小型的数据库,已经被 Oracle 收购了。MySQL6.x 版本也开始收费。
Oracle 收费的大型数据库,Oracle 公司的产品
DB2 IBM 公司的数据库产品,收费的。常应用在银行系统中。
SQL Server MicroSoft 公司收费的中型的数据库。C#、.net 等语言常使用。
SQLite 嵌入式的小型数据库,应用在手机端,如:Android。
OceanBase 阿里的大型数据库,性能已经超过Oracle全球第一
非关系型数据库(NoSQL) 描述
MongoDB MongoDB最流行的文档型数据库
Readis 基于内存的键值型数据库通过 Key-Value 键值的方式来存储数据

MySQL安装

查看是否安装成功:1、 查看服务    2、控制面版,卸载软件  

查看是否可用:  cmd    mysql -uroot -proot  

注意:如果cmd mysql -uroot -proot   不是内部或外部命令。 表示你的mysql服务并没有配置环境变量
如果有同学不能安装mysql服务器?

可以使用免安装:phpstudy_pro 这个第三方软件即可

注意:如果你使用的phpstudy不可以使用cmd命令,是因为你并没有真正在你本机安装mysql服务,也无法配置环境变量

MySQL卸载

1、直接通过计算机-控制面版-卸载软件进行卸载

2、找到c盘,把隐藏文件打开,C:\ProgramData\MySQL 删除

注意:如查卸载不彻底,需要删除计算机注册表(具体网上查相关资料)

MySQL服务启动和关闭

MySQL服务启动

  1. cmd--> services.msc 打开服务的窗口--> MySQL服务启动
  2. 使用管理员打开cmd
    net start mysql: 启动MySQL的服务

MySQL服务关闭

  1. cmd--> services.msc 打开服务的窗口--> MySQL服务关闭
  2. 使用管理员打开cmd
    net stop mysql: 关闭MySQL的服务

MySQL登录和退出

MySQL登录

* 本地登录
	 mysql -u用户名 -p密码    显示登录
	 mysql -u 用户名 -p       隐式登录
	
* 指定ip登录
	 mysql -h主机地址 -u用户名 -p密码

MySQL退出

1. exit;
2. quit;

SQL概述

什么是SQL

结构化查询语言(Structured Query Language)简称SQL,SQL语句就是对数据库进行操作的一种语言。

SQL是一套标准,所有的数据库厂商都实现了此标准;但是各自厂商在此标准上增加了特有的语句,这部分内容我们称为方言。

SQL通用语法

1. SQL 语句可以单行或多行书写,以分号结尾。
  select * from stu;
  select 
  	*
  FROM
  	stu;
2. 可使用空格和缩进来增强语句的可读性。
3. MySQL 数据库的 SQL 语句不区分大小写(仅此于win系统),关键字建议使用大写。
	1). 库名 表名 字段 别名 建议写小写
	2). 关键字建议大写: SHOW DATABASES CREATE
4. 3种注释
	* 单行注释: -- 注释内容(这种方式是通用的) 或 # 注释内容(mysql 特有) 
	* 多行注释: /* 注释 */

SQL语句的分类

分类 说明
DDL(Data Definition Language)数据定义语言 定义数据库对象:数据库,表,列等.关键字:create, drop,alter 等
DML(Data Manipulation Language)数据操作语言(掌握) 对数据库中表的数据进行增删改.关键字:insert, delete, update 等
DQL(Data Query Language)数据查询语言 (掌握) 用来查询数据库中表的记录(数据).关键字:select, where 等
DCL(Data Control Language)数据控制语言(了解) 用来定义数据库的访问权限和安全级别,及创建用户.关键字:GRANT,REVOKE 等
TCL(Transaction Control Language) 事务控制语言 用于控制数据库的事务操作,关键字; commit,savepoint,rollback等

操作数据库-DDL

创建数据库

create database 数据库名称;

创建数据库,并指定字符集

create database 数据库名称 character set 字符集名;

查询所有数据库的名称

show databases;

查询某个数据库的字符集:查询某个数据库的创建语句及字符集

show create database 数据库名称;

修改数据库的字符集

alter database 数据库名称 character set 字符集名称;

删除数据库

drop database 数据库名称;

查询当前正在使用的数据库名称

select database();

使用数据库

use 数据库名称;

操作表-DDL

数据类型

数据类型 说明
int 整数类型,例如 : age
double 小数类型,例如 : score double(5,2) 111.11
date 日期,只包含年月日,yyyy-MM-dd
datetime 日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss
timestamp 时间戳类型,包含年月日时分秒 yyyy-MM-dd HH:mm:ss 如果将来不给这个字段赋值,或赋值为null,则默认使用当前的系统时间,来自动赋值
varchar 可变字符 name varchar(20)
char 不可变字符 name varchar(20)
VARCHAR、CHAR
varchar :表示的长度可变的字符串。最大长度不能超过定义字段的时候长度。
char    :长度固定。

name varchar(20);   name 存贮数据的长度是20以内的。
                    存了:lisi 表示4个长度 ,zhangsan:8个长度  江一燕:3个长度 

name  char(20);     存了:lisi 当前的长度4,剩下的是空格 。

问题:char 的性能好。 varchar可以节省空间。
      通常时候,我们使用varchar。
	
但是我们常用的varchar()节省空间。

使用char的情况。当某个字段的长度固定的时候,,可以采用char。例如身份证号,手机号。

创建表

语法:

create table 表名(
    列名(字段名) 数据类型,
    列名(字段名) 数据类型,
    列名(字段名) 数据类型
    ...
);

示例:

create table student(
    id int,
    name varchar(32),
    birthday date,
    money double(5,2)
);

**注意事项:**最后一列,不需要加逗号(,)

查询表

查询某个数据库中所有的表名称

show tables;

查询表结构

desc 表名;

修改表

添加一列

语法:
	alter table 表名	add 列名 数据类型 约束;
实例:
	alter table teacher add jieshao varchar(50);

修改列类型

语法:
	alter table 表名 modify 列名 新类型;
实例:
	alter table teacher modify jieshao varchar(99);

修改列名和类型

语法:
	alter table 表名 change 旧列名 新列名 新类型;
实例:
	alter table teacher change jieshao intro varchar(999);

删除指定列

语法:
	alter table 表名 drop 列名;
实例:
	alter table teacher drop intro;

修改表字符集

语法:
	alter table 表名 charset 字符集;
实例:
	alter table teacher charset gbk;
	
查看表的字符集
	show create table 表名

修改表名

语法:
	rename table 旧表名 to 新表名;
实例:
	rename table teacher to tch;

删除表

直接删除表
	语法:
		drop table 表名;
	实例:
		drop table tch;
drop  table if exists  emp;  如果表存在就删除

约束

概述

约束:规定,限制。限制表中列的内容。需要满足一定的规则。数据库中的约束:限制列的内容。

意义:保证数据的有效性和完整性。可以确保数据库满足业务规则。

约束类型

约束 说明
primary key 主键约束:非空且唯一
not null 非空约束 : 某一列的值不能为空
unique 唯一约束 : 某一列的值不能重复,但可以为空
auto_increment 自增器,每一次+1
foreign key 外键约束
设计表的时候。
通常我们会新增一个字段(没有意义的字段)去做主键。不去做修改。
主键是int类型的,我们可以给他设置自动增长(假设插入一条记录的时候,主键没有认为的设置值。会自己顺序。去+1 生成新的内容,添加到主键这个字段中。),auto_increment

主键自增长:
id int primary key auto_increment;  

唯一约束:不允许重复。 一个表里可以添加多个唯一约束。
列名 类型(长度)unique;  

非空约束:不允许为空。 表示该列的内容不允许为空。
列名 类型(长度) not null,

唯一和主键约束的区别
1、唯一约束可以是空(null)。 但是主键约束不能为空
2、一张表中只能有一个主键,但是唯一约束可以有多个。

创建完表后,添加主键

alter TABLE 表名 add primary key(id);

给表添加约束

create table employee(
	id int primary key auto_increment,
	name varchar(20) not null unique, 
	gender varchar(10),
	birthday date,
	entry_date date,
	job varchar(30),
	salary double not null
);

创建表添加注释

create table employee(
	id int primary key auto_increment comment '编号',
	name varchar(20) not null unique comment '姓名', 
	gender varchar(10) comment '性别',
	birthday date comment '生日',
	entry_date date comment '入职日期',
	job varchar(30) comment '工作',
	salary double not null comment '薪水'
);

使用navicat工具

连接mysql数据

参考上课视频

操作数据库

参考上课视频

操作创建表

参考上课视频

相关阅读

11 分钟

多表操作

现实生活中,(班级)实体与(学生)实体之间肯定是有关系的,那么我们在设计表的时候,就应该体现出(班级)表与(学生)表之间的这种关系! 简称:关系型数据库(Relation DBMS) 一对一关系在实际开发中用的并不多,因为可以把关联字段设计

JavaWeb#mysql4 阅读 · 0 评论

9 分钟

用户权限DCL

我们进入公司后,有专门的DBA(数据库管理员),为你创建一个新用户,授予一定的权限... 我们只做为了解即可! 语法 注意事项 演示 语法 演示 语法 演示 语法 演示 语法 演示 超级管理员 普通用户 设计良好结构的数据库,可以有效减小数

JavaWeb#mysql3 阅读 · 0 评论

9 分钟

DML语句

语法 举例 注意事项 ==添加数据 语法 举例 注意事项 语法 举例 注意事项 如果不加任何条件,则会将表中所有记录全部修改。 查询所有记录 查询表中所有学生的姓名和对应的语文成绩 在所有学生数学分数上加10分特长分 统计每个学生的总分 发

JavaWeb#mysql4 阅读 · 0 评论

评论需要登录。生产环境使用 GitHub 登录,本地可前往 登录页 使用开发登录。

还没有评论,来抢沙发。