jdxyzlh 发表于 2018-10-10 08:39:35

MySQL-11831428

  一、数据库简介
  什么是数据库?
  *数据库就是一个文件系统,但是访问的时候需要使用标准的SQL语句来访问数据。
  关系型数据库
  *存储的都是实体与实体之间的关系。
  常见的数据库
  *Oracle:甲骨文公司的数据库产品,大型的收费数据库。
  *SQLServer:微软公司的数据库产品,中型的收费的数据库。
  *MySQL:是开源的,免费的数据库产品,在5.x版本是免费的,6.x是收费的。
  *DB2:IBM公司的数据库产品,大型的收费的数据库。
  *SyBASE:已经退出历史舞台,Powerdesigner(数据库建模工具)。
  二、MySQL的卸载和安装
  MySQL的卸载:
  1.先到MySQL的安装路径,找到my.ini的配置文件,找到两个路径,basedir和datadir。
  2.然后卸载数据库,再找到以上两个路径删除文件夹。
  MySQL的安装:
  下一步,下一步即可。
  三、root密码的重置
  3.1停止mysql服务

3.2在cmd输入一个命令,用来开启一个MySQL服务,用于登录的时候不需要验证

  此时出现上面的窗口,表示已经启动了那个MySQL的服务,这个时候千万不能关闭这个窗口。不然服务就失效了。
  3.3新打开一个cmd窗口,然后输入mysql -u root -p ,在上面的服务中,是不要密码就可以直接进入的。

  3.4输入命令show databases;可以用来查看数据库。

  输入命令use mysql;使用mysql数据库。
3.5修改密码的语句
update user set password = password('root') where user= 'root';
  3.6将两个窗口关闭
  3.7任务管理器中结束mysqld的进程


  3.8重启MySQL服务

  四、MySQL服务器与数据、表之间的关系

  五、SQL简介
  *SQL:Structured Query Language,结构化查询语言。
  *特点:非过程性语言
  *过程性语言:当前的这条语句执行需要依赖于上一条或几条语句。
  *非过程性语言:可一条语句,就会执行一个结果。
  *为加强SQL的语言能力,各厂商增强了过程性语言的特征
  *如Oracle的PL/SQL过程性处理能力。
  *SQL Server、Sybase的T-SQL。
  *SQL是用来存取关系数据库的语言,具有查询、操纵、定义和控制关系型数据的四方面功能
  六、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
  七、数据库之--创建数据库
create database 数据库名字 character set utf8;
  案例:创建一个名称为mydb1的数据库。
create database mydb1;
  案例:创建一个使用utf8字符集的mydb2的数据库。
create database mydb2 character set utf8;
  八、数据库之--查看数据库
-- 显示数据库语句;  
show databases;

  九、数据库之--显示数据库定义信息
-- 显示数据库定义信息  
show create database 数据库名字;


  十、数据库之--数据库删除
drop database 数据库名称;
  十一、数据库之--修改数据库
alter database if not exists 数据库名称 character set utf8;
  十二、数据库之--切换数据库
use 数据库名称;
  十三、数据库之--查看当前使用的数据库
select database();
  十四、数据表之--创建数据表
craete table 表名(  
    字段1 类型(长度) 约束,
  
    字段2 类型(长度) 约束,
  
    字段3 类型(长度) 约束
  
);
  注意:
  表名小括号,后面要有分号。
  每一行字段后面要有逗号,但是最后一行没有逗号。
  数据类型后面有长度,如果是字符串类型,长度必须加。如果其他类型可以不加。默认长度。
  数据类型:
  字符串类型:
varchar长度是可变的。char长度是不可变的。  大数据类型:
bolb二进制文件text字符  数值型:
tinyintsmallintintbigintfloatdouble  逻辑型:
bit  日期型:
date只包含日期time只包含时分秒datetime包含日期和时分秒timestap包含日期和时分秒,如果不传入数据,默认选择当前系统时间  案例:创建表
create table employee(  id int,
  name varchar(20),
  gender varchar(10),
  birthday date,
  entry_date date,
  job varchar(100),
  salary double,
  resume text
  
);

  十五、数据表之--显示所有的数据表
show tables;
  十六、数据表之--单表的约束
  主键约束:标识标记该条记录,通过primary 可以 声明主键。(默认唯一和非空)
  唯一约束:值是唯一的,使用unique声明。
  非空约束:值不能为空,not null
  十七、数据表之--使用约束创建表
create table employee2(  id int primary key auto_increment,
  name varchar(20) unique not null,
  gender varchar(10) not null,
  birthday date not null,
  entry_date date not null,
  job varchar(100) not null,
  salary double not null,
  resume text not null
  
);

  十八、数据表之--查看表的信息
desc 表名;
  十九、数据表之--查看建表语句和字符集
show create table 表名;
  二十、数据表之--删除表
drop table 数据表名称;
  二十一、数据表之--修改表

  添加字段:
alter table 表名 add 字段 类型(长度) 约束;
  删除字段
alter table 表名 drop 字段;
  修改类型或者约束
alter table 表名 modify 字段 类型(长度) 约束;
  修改字段的名称
alter table 表名 change 旧字段 新字段 类型(长度) 约束
  修改表名
rename table 表名 to 新表名;
  修改字符集
alter table 旧表名 character set utf8;  二十二、数据之增加
  添加数据
insert into 表名 (字段,字段,字段) values(值1,值2,值3);insert into 表名 values(值1,值2,值3);  注意:
  数据与字段的类型相同。
  字段长度需要控制。
  字符串或者日期类型需要使用''。

  向user表中插入数据。
insert into user values (null,'xiaofeng','1994-10-10','2011-1-1','HR',19000,'abc');  
insert into user values (null,'美美','1994-10-10','2011-1-1','HR',19000,'abc');
  
insert into user values (null,'小风','1994-10-10','2011-1-1','WORKER',21000,'abc');
  
insert into user values (null,'芙蓉','1994-10-10','2011-1-1','HR',1000,'abc');
  
insert into user values (null,'班长','1994-10-10','2011-1-1','HR',100,'abc');

  二十三、数据之修改
update 表名 set 字段=值,字段=值   如果没有where条件,默认更新所有的记录。
  有where的话,则更新一条或几条。
  案例:将所有员工的薪水修改为5000元。

  案例:将姓名为班长的员工的薪水修改为3000元。

  二十四、数据之删除
delete from 表名   案例:删除表中名称为'班长'的数据

  二十五、数据之查询
select * from 表名;  
select 字段1,字段2 from 表名 ;
  案例:查询所有的用户信息

  案例:查询用户的姓名、生日信息

  使用where条件过滤
select * from 表名;  
select 字段1,字段2 from 表名 ;
  案例:查询芙蓉的信息

  使用order by排序
  案例:对用户的生日进行排序(降序)

  分组函数
  count()、max()、min()、avg()、sum()
  案例:求用户信息总共多少人,总工资是多少,最高工资和最低工资是多少,平均工资是多少。



页: [1]
查看完整版本: MySQL-11831428