一. MySQL 介绍
数据库分类:
1. 关系型数据库(RDBMS)
Oracle数据库
MySQLl数据库
MariaDB数据库
SQL Server数据库
Access数据库
其他不常用关系型数据库: DB2,PostgreSQL,Informix,Sybase
2. 非关系型数据库(Nosql)
NOSQL>>>>> Not Olnly SQL
键值(Key-Value)存储数据库
memcached(key-value)
Redis(key-value)
列存储(Column-oriedted)数据库 很少用
Cassandra(Column-oriedted)
面向文档(Document-Oriented)数据库
MongoDB(Document-Oriented)
图形(Graph)数据库
其他不常用非关系型数据库: HBase,MemcacheDB,BerkeleyDB,Tokyo Cabinet Tokyo Tyrant (ttserver)
二. MySQL的下载安装,简单应用及目录介绍
将MySQL的bin目录追加到环境变量中 PATH
mysqld --initialize-insecure 初始化
mysqld 启动MySQL服务
mysql -u root -p 连接MySQL服务器
mysqld --install 制作MySQL的Windows服务
mysqld --remove 移除
注册成服务之后
net start mysql 启动mysql服务
net stop mysql 关闭mysql服务
三. root用户密码设置及忘记密码的解决方案
方法1: 首先登陆MySQL, 使用mysql自带的那个客户端连接上mysql
格式:mysql> set password for 用户名@localhost = password('新密码');
例子:mysql> set password for root@localhost = password('123');
四. 初始sql语句,语句结尾加 ' ; '
1.库
增: create databasesdb1 charset utf8 ;#创建一个库,可以指定字符集
查: show databases; #查看数据库中所有的库
改: alter database db1 charset latin1; #修改的字符集 Latin (改成哪个字符集)
删除: drop database db1; #删除数据库
2. 表
先切换库: use db1; #要操作表文件,要先切换到对应的库下才能操作表
增: create table t1(id int, name char(10));
查: show tables; #查看当前库中所有的表
show create table t1; #查看单表的创建信息
desc t1; 查看表结构
describe t1; 同上
改: alter table t1 modify name char(3);
alter table t1 change name name1 char(2);
删: drop table t1;
3. 行*******
增: insert into t1 values(1,'dsb1'),(2,'dsb2'),(3,'dsb3');
#insert 后面的 into 可以不用写
查: select * from t1;
select id,name from t1;
改: update t1 set name='sb' where id = 2;
update t1 set name= 'sb'; 不指定where,name字段的所有数据都改成sb.
删: delete from t1 where id = 1 ; 删除id 为1 的行
清空表:
delete from t1; #自增id 会继续 更上删除后的
truncate table t1; 数据量大,删除速度比上一条快, 且直接从零开始,
auto_increment 表示: 自增
primary key 表示: 约束(不能重复且不能为空)