IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> mySql简单应用 -> 正文阅读

[大数据]mySql简单应用

-->用navicate软件操作数据库无需在电脑中配置安装数据库

备注:关于数据库术语

-?安装的mysql数据库软件,称为 ?数据库管理系统 (DBMS)

-?安装的navicate数据库界面软件,称为 操作软件

-?存储和管理具体数据的数据库对象,称为 数据库(DB),如下图中的mysql/sys/...

-?mysql数据库默认超级管理员账号只有一个:root

-?phpstudy中mysql数据库的root账号的默认密码:root

一、数据库管理

1、创建数据库

?打开的数据库连接上,点击鼠标右键,选择新建数据库

?填写创建数据库的名称和字符信息,完成创建

备注:字符的选择

-?utf8:表示标准的utf-8编码

-?utf8mb4:mysql数据库最新支持的兼容性最好的utf-8编码

utf-8 most 4 bytes:以1~4个字节的形式存储字符

?

?2、删除数据库

在指定的数据库名称上,点击鼠标右键,选择删除数据库即可

3、用命令操作数据库

打开输入命令的查询窗口

执行命令,创建指定字符编码的数据库

?-- 注释,创建一个名称为ushop,编码为utf8的数据库

create database ushop default charset "utf8";

执行命令,删除指定名称的数据库

?--?删除uclass数据库

drop database ucalss;

二、数据表操作?

1、创建数据表

打开数据库,选择数据库中的图标,右键点击~选择新建表

?编辑表中的列名称、列存储数据的类型,存储数据的格式,最后点击保存~创建表

?2、删除表

数据表上鼠标右键点击,选择删除表就可以完成表的删除

3、编辑表

?如果创建的数据表,包含的列名称、列的数量都不符合要求时,可以选择直接编辑已经创建好的数据表,选择某张数据表之后,可以点击设计表

4、查看表中数据

?双击要查看的表格名称,就可以在navicate界面中查看数据表中的数据

?备注;关于创建数据表时,列的数据类型:和数据的具体类型相关,常见的类型如下:

-?字符串类型:varchar 变长字符串,常用

??char?????定长字符串

??????????????text?????长字符串

-?整数类型: int

-?浮点数类型:double

-?日期类型:?date、time、datetime、timestemp

- 布尔类型:bool,底层就是整数0/1

三、命令行操作数据表?

1、创建表

-- 创建数据表

create table goodstype(

id int primary key auto_increment comment '类型编号',

name varchar(20) not null comment '类型名称',

intro text comment '类型描述'

)

2、删除表

?--?删除名称为goodstype的数据表

drop table goodstype;

3,编辑表

?-- 编辑表

-- 添加列

alter table goodstype

add column cover varchar(200) comment '类型封面';

--?修改列

alter table goodstype

change column cover gscover varchar(150);

--?删除列

alter table goodstype

drop column gscover;

四、数据CRUD?

1、命令操作---表修改ctrl+s可保存

-- 注册一个用户

--添加一条数据,给指定的列添加值,其他列就会出现空白数据

insert into user(username, password)

value("jerry", "123");

-- 给所有列添加数据,没有添加id列;id自动增长,自动计算并添加数据

insert into user(username, password, phone, email, address)

value("shuke", "123", "16866668888", "shuke@offcn.com", "南京");

--?没有指定任何列名称,values后面必须给每一列指定要添加的数据

insert into user

value(4, "beita", "123", "15678900987", "beita@offcn.com", "武汉");

-- 批量添加数据

insert into user(username, password)

value("xiaowang", "123"), ("xiaoli", "321"), ("oldzhao", "456");

2、修改数据

可以对已经存在的数据进行编辑,双击要修改数据的数据表,查看数据表中数据的同时可以编辑数据,最后Ctrl+S保存 ,命令操作:

-- 修改数据表中的数据

UPDATE 数据表名称

SET 列=值,?列2=值2,....

?????WHERE 条件;????--?修改数据库中满足条件的数据

-- 修改用户密码

update user set password = "!@#$%123"

where username = "xiaoli";

-- 完善用户资料

update user set phone="15634342233",

email="xiaoli@offcn.com",

address="成都"

where username="xiaoli";

3、删除数据

?SQL语句中提供了:DELETE用于删除数据表中的数据

注意:DELETE语句删除数据时,一定要确认、再次确认、再次确认删除条件

-- 删除数据

-- 注销用户

delete from user where username = "xiaoli";

5、查询数据

-->数据准备

?

-- 创建数据库

create database uclass default charset "UTF8";

-- 指定数据库

use uclass;

-- 创建数据表

create table user(

id int primary key auto_increment comment '用户编号',

username varchar(50) not null comment '账号',

password varchar(50) not null comment '密码',

nickname varchar(100) comment '昵称',

age int default 18 comment '年龄',

gender char(5) default '男' comment '性别'

);

create table courseType(

id int primary key auto_increment comment '课程编号',

name varchar(50) not null comment '类型名称',

intro text comment '课程类型描述'

);

create table course(

id int primary key auto_increment comment '课程编号',

name varchar(50) comment '课程名称',

price double comment '课程售价',

sales int comment '销售量',

ctypes int comment '所属类型'

);

-- 测试数据

insert into user(username, password, nickname)

values('tom', '123', '汤姆'),

('jerry', '123', '杰瑞'),

('shuke', '123', '舒克'),

('beita', '123', '贝塔'),

('peiqi', '123', '佩奇'),

('qiaozhi', '123', '乔治');

insert into courseType(name)

values('前端'),('JAVA WEB'),('人工智能');

insert into course(name, price, sales, ctypes)

values('HTML/css', 1000, 20000, 1),

('JavaScript', 1400, 20000, 1),

('NodeJS', 2000, 10000, 1),

('Express', 2200, 20000, 1),

('VueJS', 4000, 20000, 1),

('React', 3000, 20000, 1),

('小程序', 800, 20000, 1),

('Java SE', 1000, 20000, 2),

('Java EE', 1000, 20000, 2),

('JSP/Servlet', 1200, 20000, 2),

('Mybatis', 3000, 20000, 2),

('Spring', 4000, 20000, 2),

('SpringMVC', 3000, 20000, 2),

('Hibernate', 1200, 20000, 2),

('Struts2.x', 500, 20000, 2),

('SpringBoot', 4500, 20000, 2),

('SpringCloud', 8000, 20000, 2),

('Nacos', 6000, 20000, 2),

('Zookeeper', 600, 20000, 2),

('Dubbo', 1600, 20000, 2),

('Python', 1000, 20000, 3),

('Django', 1200, 20000, 3),

('Flask', 1000, 20000, 3),

('数据分析', 1500, 20000, 3),

('数据爬虫', 1500, 20000, 3),

('深度学习', 6000, 20000, 3),

('机器学习', 6000, 20000, 3);

-->实际操作

?-- 全表查询:查询一张表中的所有数据

select * from user;

-- 用户注册:判断某个账号是否已经被使用

select * from user where username = 'tom';

-- 用户登录:判断账号密码是否正确

select * from user where username = "tom" and password = "123";

-- 查询前端的所有课程

select * from courseType where name = "前端";

select * from course where ctypes = 1;

-- 改造,关联查询

select * from courseType ct, course c

where ct.id = c.ctypes and ct.name = "前端";

-- 改造,连接查询

-- 左连接

select * from courseType ct left join course c

on ct.id = c.ctypes where ct.name = "前端";

-- 右连接

select * from courseType ct right join course c

on ct.id = c.ctypes where ct.name = "前端";

-- 查询课程售价小于1000 的所有课程

select * from course where price < 1000;

-- 查询课程售价大于1500 小于4000的课程

select * from course where price > 1500 and price < 4000;

-- 查询课程售价在2000~4000之间的java课程

select * from courseType where name = "JAVA WEB"

select * from course where ctypes = 2 and price > 2000 and price < 4000;

-- 改造:关联查询

select * from courseType, course

where courseType.id = course.ctypes

and courseType.name = "JAVA WEB"

and course.price > 2000

and course.price < 4000;

-- 不知道具体课程名称,查询智能相关的课程

-- 模糊查询:%匹配0~n个任意字符,_匹配单个字符

select * from courseType where name like '%智能%';

-- 查询部分课程信息

select * from course where name = "NodeJS" or name = "Express";

-- 改造:in查询

select * from course where name in ('NodeJS', 'Express');

-- 查询课程销售量在10000~20000的课程

select * from course where sales >= 10000 and sales <= 20000;

-- 改造:between..and

select * from course where sales between 10000 and 20000;

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-25 12:36:07  更:2021-10-25 12:38:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:55:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码