声明:所有引用知识产权均归其原作者所有,本博客仅供参考
文章目录
学习资源:
- 视频资源:https://www.bilibili.com/video/BV1DE411n7fU?p=1
- 课件资源:链接: https://pan.baidu.com/s/1UYbftr4OANuhnvmfPYwNqA 密码: pmrv
- 博客链接
1.安装MySQL
具体安装步骤可看公众号:软件安装管家
root密码:p1
2.遇到的问题
Access denied for user ‘ODBC’@‘localhost’ (using password: NO)
解决方法:cmd 中输入 mysql -u root -p
Password:(默认为空)
You are not allowed to create a user with GRANT
解决方法: cmd 中重新登陆root用户
Can’t connect to MySQL server on localhost (10061)解决方法
解决方法: 点击这里
MySQL8下修改密码
解决方法: mysql8重置root用户密码的完整步骤
用pymysql访问其他电脑上的数据库 PYMYSQL.ERR.OPERATIONALERROR: (1045, "ACCESS DENIED FOR USER ‘ROOT’@‘192.168.20.5’ (USING PASSWORD: N)
解决方法:
在命令行登录MYSQL后,按照如下操作
use mysql
update user set host = '%' where user = 'root';
3.相关指令
(1)显示数据库
show databases;
(2)创建数据库
create 数据库名称 default charset utf8 collate utf8_general_ci;
(3)切换工作区
-
use mysql
-
show tables;
-
select * from 表名称;
(4)创建用户
create user 'alex'@'IP or %' identified by 'password';
%:表示对任意均可
(5)授权:
-
grant select,insert,update on db1.t1 to 'alex'@'%' ;
-
grant all privileges on db1.t1 to 'alex'@'%';
-
revoke all privileges on db1.t1 from 'alex'@'%';
(6)添加和删除数据库
-
create database db2;
-
drop database db2;
4.环境变量
将 mysqld(服务端) 和 mysql(客户端) 路径加入环境变量。
5.Windows服务
-
安装路径/mysqld --install
-
安装路径/mysqld --remove
-
net start MySQL
-
net stop MySQL
6.SQL语句规则
(1)操作文件夹
create database db2;
create database db2 default charset utf8;
show databases;
drop database db2;
(2)操作文件
show tables;
create table t1(
id int,
name char(10)
// *列名 类型 null,*
// *列名 类型 not null,*
// *列名 类型 not null default 1,*
// *列名 类型 not null auto_increment primary key,*
)engine=innodb default charset=utf8
create table t1(id int, name char(10)) engine=innodb default charset=utf8;
create table t1(
id int auto_increment primary key,
name char(10)
) engine=innodb default charset=utf8;
innodb | 支持事物,原子性操作,默认选此引擎 |
---|---|
myisam | 支持全局索引,存储速度快,不支持事物 |
auto_increment | 表示自增 |
primary key | 表示约束(不能重复且不能为空);加速查找 |
数据类型:
数字:
tinyint
int
bigint
float
double
decimal
字符串:
数据类型 | 特点 |
---|---|
char | 查询数据快 |
varchar | 节省空间 |
text | 存储变长的大字符串 |
时间类型:
datatime
以下见此博客:
enum 选项固定,不常更改
set
清空表:
delete from t1; //继续计数
truncate table t1; //重新计数,且速度快
删除表:
drop table t1;
(3)操作文间夹中内容
插入数据:
insert into t1(id,name) values(1,'alex')
删除数据:
delete from t1 where id<6;
修改数据:
update t1 set age=18;
update t1 set age=18 where age=17;
查看数据:
select * from t1;
(4)外键(有下拉框时,使用。 id 有外约束)
create table userinfo(
uid bigint auto_increment primary key,
name varchar(32),
department_id int
constraint fk_user_department foreign key(department _id) references department('id')
)engine+innodb default charse=utf8;
create talbe department(
id bigint auto_increment primary key,
title char(15)
)engine+innodb default charset=utf8;