day37:MySQL基本操作
目录
part1:登录mysql的完整语法
# (1) 登录mysql语法 默认root账户 是系统最高权限用户
mysql -uroot -p 127.0.0.1 =>localhost 本地ip地址
# (2) 退出mysql
exit 或者 \q # (3) 远程连接mysql服务器
mysql -uroot -p -h192.168.65.135
part2:查询用户/设置密码/去除密码
# 查询当前登录的用户是谁
select user() # 设置密码
set password = password("") # 去除密码
set password = password("")
part3:给ip/网段/所有ip设置账号密码
# 给具体某个ip设置账号密码,用来访问数据库(公网ip)
create user 'ceshi100'@'192.168.65.1' identified by ''; # 给具体某个网段下的所有ip设置共同的账号密码,用来访问数据库(公网ip) %代表任意的ip 0~255
create user 'ceshi101'@'192.168.174.%' identified by ''; # 所有的ip都可以登录到服务器数据库中
create user 'ceshi102'@'%' identified by '';
part4:查看权限
# 刷新权限,立刻生效
flush privileges # 查看哪个ip哪个用户的权限
'''USAGE 没有任何权限'''
show grants for 'ceshi102'@'%';
+--------------------------------------+
| Grants for ceshi102@% |
+--------------------------------------+
| GRANT USAGE ON *.* TO 'ceshi102'@'%' |
+--------------------------------------+
part5:添加权限/删除权限/删除用户
grant 权限 on 数据库.表名 to '用户名'%'ip地址' identified by '密码' """
# 主要权限
select 查看数据表的权限
insert 插入数据表的权限
update 更新数据表的权限
delete 删除数据表的权限
drop 删除数据库的权限
* 代表所有
""" grant select,drop on *.* to 'ceshi102'@'%' identified by "" # all 代表所有权限
grant all on *.* to 'ceshi102'@'%' identified by "" # 移除权限
# 单个
revoke drop on *.* from 'ceshi102'@'%'
# 所有
revoke all on *.* from 'ceshi102'@'%' # 删除用户
drop user 'ceshi102'@'%'
part6:操作数据库:database
# (1) 操作[数据库] (文件夹)
'''增'''
# 创建一个数据库
create database db0824 charset utf8; '''查'''
# 查看所有数据库
show databases
# 查看建立数据库的语句
show create database db0824 # CREATE DATABASE `db0824` /*!40100 DEFAULT CHARACTER SET utf8 */ '''改'''
alter database db0824_1 charset gbk '''删'''
drop database db0824_1;
part7:操作表:table
# (2) 操作[数据表] (文件)
# 先选择数据库
use 数据库名 '''增'''
# 字段名1 类型1 ,字段名2 类型2 , ... ...
create table t1(id int , name char); '''查'''
# 查看所有表
show tables;
# 查看建表语句 配合\G 可以垂直显示
show create table t1;
"""
Create Table: CREATE TABLE `t1_1` (
`id` int(11) DEFAULT NULL,
`name` char(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
""" # 查看表结构
desc t1 '''改'''
# modify 只能改变数据类型
alter table t1 modify name char(5)
# change 连字段名 + 类型一起改变
alter table t1 change name newname char(4)
# add 添加字段
alter table t1 add age int;
# drop 删除字段 column列
alter table t1 drop column age
# rename 更改表名
alter table t1 rename t1_2 '''删'''
drop table t1_2;
part8:操作表中的数据(记录)
# (3) 操作[记录] (文件中的数据)
'''增'''
# 一次插入一条数据
'''insert into 表名(字段1,字段2,...) values(值1,值2, .... )'''
insert into t1_1(id,name) values(1,"xboy1"); # 一次插入多条数据
insert into t1_1(id,name) values(2,"xboy2"),(3,"xboy3"),(4,"xboy4"); # 不指定具体字段插入(默认把所有字段对应的值插一遍)
insert into t1_1 values(5,'xboy5'); # 指定单个字段插入数据
insert into t1_1(name) values('xboy6'); '''查'''
# * 代表所有
select * from t1_1; # 指定字段进行查询
select id,name from t1_1; '''改'''
# update 表名 set 字段=值 where 条件
update t1_1 set name="王闻你真帅" where id = 1 # 切记更改时,加上条件,否则全都改掉了
update t1_1 set name="王闻你真帅" '''删'''
# 指定id=2的这条数据删除
delete from t1_1 where id = 1 # 如果不加条件,删除所有数据
delete from t1_1 # 重置数据表 (删除数据 + 重置id)
truncate table t1_1;
part9:MySQL中数据类型
1.整型
tinyint 1个字节 有符号(-128 ~ 127) 无符号(unsigned) (0 ~ 255) 小整型值
int 4个字节 有符号(-21亿 ~ 21亿 左右) 无符号(unsigned) (0 ~ 42亿) 大整型值
create table t1(id int , age tinyint );
insert into t1 values(2200000000,1) # error
insert into t1 values(2100000000,1)
insert into t1 values(2100000000,128) # error
insert into t1 values(2100000000,127)
2.浮点型
float(255,30) 单精度,总长度最多255位,小数长度最多30位,整数长度最多225位
double(255,30) 双精度,总长度最多255位,小数长度最多30位,整数长度最多225位
decimal(65,30) 金钱类型,使用字符串的形式保存小数,总长度最多65位,小数长度最多30位,整数长度最多35位
"""默认存在四舍五入"""
create table t2(f1 float(5,2) , f2 double(5,2) , f3 decimal(5,2));
insert into t2 values(1.77777777777777777777777777,1.77777777777777777777777777,1.77777777777777777777777777);
存储结果如下图所示

"""float 默认小数保留5位,double小数位截取16位,decimal(10,0) 默认保留整数,存在四舍五入"""
create table t3(f1 float,f2 double ,f3 decimal);
insert into t3 values(1.77777777777777777777777777,1.77777777777777777777777777,1.77777777777777777777777777);
存储结果如下图所示

3.字符串类型
char 字符长度 255个
varchar 字符长度 21845个 (注意:总字节数不超过65535)
char(11) 定长 : 固定开辟11个字符长度的空间(手机号,身份证号,银行卡), 开辟空间速度上char速度更快
varchar(11) 变长 : 最多开辟11个字符长度的空间(评论,消息留言,地址), 开辟速度相较于char慢一点.
text 文本类型,存论文,小说,文章..
create table t5(c char(11), v varchar(11) , t text);
insert into t5 values('',"","");
insert into t5 values('',"",""); # error # concat 拼接任意长度的字符串
select concat(c,":",v,":",t) from t5; # mysql 中函数
select user()
select concat()
select concat(参数1,参数2,参数3 , ... ) 把所有的参数拼接在一起
concat拼接后的结果如下图所示

part10:枚举和集合
enum 枚举 : 从列出来的数据当中选一个,比如性别
set 集合 : 从列出来的数据当中选多个(自动去重),比如爱好
create table t6(
id int,
name varchar(10),
money float(6,3),
sex enum("男性","女性","禽兽","人妖","雌雄同体","半兽人","阿凡达"),
hobby set("吃肉","抽烟","喝酒","喝假酒")
); # 正常
insert into t6(id , name ,money , sex , hobby) values(1,"克拉伊买买提",56.7891,"半兽人","喝假酒,抽烟");
# 自动去重
insert into t6(id , name ,money , sex , hobby) values(1,"克拉伊买买提",56.7891,"半兽人","喝假酒,抽烟,抽烟,抽烟,抽烟");
存储结果如下图所示

day37:MySQL基本操作的更多相关文章
- mysql 基本操作语句
mysql 基本操作笔记: 创建表demo:CREATE TABLE `role` ( `role_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMME ...
- css属性编写顺序+mysql基本操作+html细节(个人笔记)
css属性编写顺序: 影响文档流的属性(比如:display, position, float, clear, visibility, table-layout等) 自身盒模型的属性(比如:width ...
- 【mysql】mysql基本操作
mysql基本操作 1.mysql表复制 mysql 表结构的复制 create table t2 like t2 mysql 表数据的复制 insert into t2 select * from ...
- 数据库相关 Mysql基本操作
数据库相关 设计三范式: 第一范式: 主要强调原子性 即表的每一列(字段)包含的内容,不能再拆分.如果,某张表的列,还可以细分,则违背了数据库设计的第一范式. 第二范式: 主要强调主键,即:数据库中的 ...
- Mysql基本操作、C++Mysql简单应用、PythonMysql简单应用
MySql基本操作 -- 当指定名称的数据库不存在时创建它并且指定使用的字符集和排序方式 CREATE DATABASE IF NOT EXISTS db_name CHARACTER SET UTF ...
- MySQL必知必会笔记-Mysql基本操作
Mysql基本操作 mysql的基本操作包括增.删.改.查,本书中前三章简单的介绍MySQL为何物,查是mysql中非常重要的功能,4-6章展示了mysql的查(查询--select)的简单实现,my ...
- day02 MySQL基本操作
day02 MySQL基本操作 昨日内容回顾 数据库演变史 1.纯文件阶段 2.目录规范 3.单机游戏 4.联网游戏 # 数据库就是一款帮助我们管理数据的程序 软件开发架构及数据库本质 cs架构与bs ...
- MYSQL基本操作(上)
很久之前,就想做个Mysql的小结,毕竟数据库知识是软件研发的基本技能,这里话不多说,开始总结一波. 数据库基本概念 数据库为高效的存储和处理数据的介质(主要分为磁盘和内存两种),一般关系型数据库存储 ...
- MySQL(二) MySQL基本操作
数据库的基本操作 启动关闭 MySQL 服务 MySQL 安装好后,默认是当 Windows 启动.停止时,MySQL 也自动.停止.不过,用户可以使用 Windows 下的服务管理器或从命令行使用 ...
随机推荐
- JVM详解之:汇编角度理解本地变量的生命周期
目录 简介 本地变量的生命周期 举例说明 优化的原因 总结 简介 java方法中定义的变量,它的生命周期是什么样的呢?是不是一定要等到方法结束,这个创建的对象才会被回收呢? 带着这个问题我们来看一下今 ...
- 2020牛客暑期多校训练营 第二场 I Interval 最大流 最小割 平面图对偶图转最短路
LINK:Interval 赛时连题目都没看. 观察n的范围不大不小 而且建图明显 考虑跑最大流最小割. 图有点稠密dinic不太行. 一个常见的trick就是对偶图转最短路. 建图有点复杂 不过建完 ...
- zabbix脚本发送邮件告警
目录 zabbix邮箱告警 内部使用第三方邮箱发送邮箱告警 zabbix使用第三方邮箱发送告警 通过脚本使用第三方邮箱发送邮箱告警 zabbix邮箱告警 环境说明: zabbix服务端 192.168 ...
- jmeter分布式踩得坑汇总
一.普通的配置文件基本都能网上搜索资料,这里就简单记录: a.jmeter.properties几处修改:1.remote_hosts=master压力机Ip;2.server_port,开启服务器端 ...
- LeetCode 164. Maximum Gap[翻译]
164. Maximum Gap 164. 最大间隔 Given an unsorted array, find the maximum difference between the successi ...
- 从零写一个Asp.net core手脚架 (异常处理)
既然是手脚架,那么肯定得明白,手脚架是有限资源的一个整合,我们尽可能完善它,并保留可扩展性才是最终目的,尽可能减少硬编码,让业务不满足的情况下,可以自行修改 我们把解决方案取名Asp.netCoreT ...
- Java 通过Jna调用dll路径问题
调试阶段 C++ dll --> window/system32C# dll --> C:\Program Files\Java\jdk1.8.0_171\bin [jdk bin] 打包 ...
- MyBatis深入理解参数
目录 一.快速创建mapper文件 二.parameterType 三.MyBatis 传递参数 1. 一个简单参数(掌握) 一.快速创建mapper文件 由于每个接口都要创建一个对应的mapper文 ...
- 通过java程序(JSch)运行远程linux主机上的shell脚本
如果您看完文章之后,觉得对您有帮助,请帮我点个赞,您的支持是我不竭的创作动力! 如果您看完文章之后,觉得对您有帮助,请帮我点个赞,您的支持是我不竭的创作动力! 如果您看完文章之后,觉得对您有帮助,请帮 ...
- 百度小程序中swan.setPageInfo的用法
现在百度智能小程序是百度最新的流量入口,现在很多做SEO优化.小程序开发的企业为了获取更多的流量不得不开发了,很多的技术人员不了解百度小程序的标题和关键词.描述等信息不知道在哪里设置. 以下是小编给你 ...