数据库学习笔记
MySQL数据库的介绍
-
什么是数据库
数据库(Database)就是按照数据结构来组织,存储和管理数据的仓库 专业的数据库是专门对数据进行创建,访问,管理,搜索等操作的软件,比起我们自己用文件读写的方 式对象数据进行管理更加的方便,快速,安全 -
作用
对数据进行持久化的保存 方便数据的存储和查询,速度快,安全,方便 可以处理并发访问 更加安全的权限管理访问机制 -
常见的数据库
数据库分两大类,一类是 关系型数据库。另一类叫做 非关系型数据库。
关系型数据库: MySQL,Oracle,PostgreSQL,SQLserver。。。。
非关系型数据库:Redis内存数据库,MongoDB文档数据库。。 -
认识mysql数据库
MySQL是最流行的关系型数据库管理系统 -
关于数据库的一些概念
数据库 Database
数据表 Tables
数据字段
行 row
列
Windows安装MySQL5.7.17 1.
1.在MySQL官网 http://dev.mysql.com/downloads/mysql/ 上面下载ZIP安装包(第二个:Windows (x86, 64bit), ZIP Archive)。
2.下载完成后解压,将其放到想要安装的目录下。 例如:D:\MySQL5.7\mysql-5.7.17-winx64
3.新建一个my.ini配置文件,原始的my-default.ini配置文件只是个模版,不要在里面改动。 my.ini的内容如下:
[mysql] default-character-set=utf8 [mysqld] port = 3306 basedir=D:\MySQL5.7\mysql-5.7.17-winx64 datadir=D:\MySQL5.7\mysql-5.7.17winx64\data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB explicit_defaults_for_timestamp=true
4.在安装路径下新建一个空的data文件夹。
5.以管理员身份运行cmd,进入bin目录,执行 mysqld --initialize-insecure --user=mysql 命令。不进行这一 步,安装完成之后无法启动服务。
6.依然在管理员cmd窗口的bin目录下,执行 mysqld install 命令安装。完成后会提示安装成功。
7.依然在管理员cmd窗口的bin目录下,执行 net start mysql 命令启动MySQL服务
8.修改环境变量,添加"D:\MySQL5.7\mysql-5.7.17-winx64\bin"。
9.在普通cmd窗口中,进入bin目录,执行 mysql -u root -p 命令,默认没有密码,回车进入。
认识和操作一下mysql的基本命令
登录mysql,在终端输入以下命令,进行登录
mysql -u root -p
MacBook-Pro:~ yc$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.28 HomebrewCopyright © 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql>
查看当前mysql中所有的库。
库==>数据库==>就像文件夹一样,库里面可以存储很多个表)
show databases;
选择需要操作的库,打开库
use mysql;
查看当前库中的所有数据表
show tables;
查看表中的数据.
查看user表中的所有数据的所有字段
select * from user;
查看 user表中的所有数据的 host和user字段列
select host,user from user;
库和表的概念与关系
库就像是文件夹,库中可以有很多个表
表就像是我们的excel表格文件一样 每一个表中都可以存储很多数据
mysql中可以有很多不同的库,库中可以有很多不同的表
表中可以定义不同的列(字段),
表中可以根据结构去存储很多的数据
如何创建自己的库?
create database 库名 default charset=utf8;
创建库
create database tlxy default charset=utf8;
– Query OK, 1 row affected (0.01 sec)
– 查看所有库 show databases;
– 进入库 use tlxy;
创建表的语法
create table 表名( 字段名 类型 字段约束, 字段名 类型 字段约束, 字段名 类型 字段约束, )engine=innodb default charset=utf8;
– 创建用户表
create table user(
name varchar(20),
age int,
sex char(1)
)engine=innodb default charset=utf8;
– Query OK, 0 rows affected (0.16 sec)
添加数据
– 向 user 表中 添加 name,age,sex 数据 i
nsert into user(name,age,sex) values(‘admin’,26,‘男’)
– Query OK, 1 row affected (0.00 sec)
insert into user(name,age,sex) values(‘张三’,22,‘女’);
– 查看表中的数据 select * from user;
±-------±-----±-----+
| name | age | sex |
±-------±-----±-----+
| admin | 26 | 男 |
| 张三 | 22 | 女 |
±-------±-----±-----+
2 rows in set (0.00 sec)
总结:
认识 库,表的概念和关系 mysql的基本命令: 登录,查看库,选择库,查看表, 创建库,创建表,添加数据,查 询数据。
MySQL基础操作
使用方法:
方式一: 通过在命令行敲命令来操作 ( 有助于命令的掌握)
方式二: 通过图型界面工具,如 Navicat 等(在熟练掌握后再使用)
方式三:通过编程语言(python,php,java,go…)执行mysql命令
SQL ( Structure query language ) 结构化查询语言
SQL语言分为4个部分:DDL(定义)、DML(操作)、DQL(查询)、DCL(控制)
SQL语句中的快捷键
\G 格式化输出(文本式,竖立显示)
\s 查看服务器端信息 \c 结束命令输入操作
\q 退出当前sql命令行模式
\h 查看帮助
操作数据库的步骤
连接, 打开库, 操作, 关闭退出
1.通过命令行连接MySQL
数据库语法的特点
- SQL 语句可以换行, 要以分号结尾
- 命令不区分大小写. 关键字和函数建议用大写
- 如果提示符为 '> 那么需要输入一个’回车
- 命令打错了换行后不能修改, 可以用 \c 取消
- 数据库操作
查看数据库 show databases;
创建数据库 create database 库名 default charset=utf8;
删除数据库 drop database 库名;
打开数据库 use 库名;
- 数据表操作
数据库管理系统中, 可以有很多库, 每个数据库中可以包括多张数据表
查看表: show tables;
创建表: create table 表名(字段名1 类型,字段名2 类型)engine=innodb default charset=utf8;
创建表: 如果表不存在,则创建, 如果存在就不执行这条命令
create table if not exists 表名(字段1 类型,字段2 类型);
create table if not exists users(
id int not null primary key auto_increment,
name varchar(4) not null,
age tinyint, sex enum(‘男’,‘女’)
)engine=innodb default charset=utf8;
删除表: drop table 表名;
表结构: desc 表名;
查看建标语句:show create table users;
- 数据操作 增删改查
插入
insert into 表名(字段1,字段2,字段3) values(值1,值2,值3);
insert into 表名(字段1,字段2,字段3) values(a值1,a值2,a值3),(b值1,b值2,b值3);
查询
select * from 表名; select 字段1,字段2,字段3 from 表名; select * from 表名 where 字段=某个值;
修改
update 表名 set 字段=某个值 where 条件;
update 表名 set 字段1=值1,字段2=值2 where 条件; update 表名 set 字段=字段+值 where 条件;
删除
delete from 表名 where 字段=某个值;
退出MySQL
exit; 或者 quit;
MySQL的数据类型
MySQL数据库与数据表操作
Mysql数据库表引擎与字符集
MySQL 数据操作 DML
DQL-MySQL数据查询SQL
Mysql数据库导入导出和授权
IDEA 单元测试
子查询与表链接