MySQL适合入门的基本操作

一、安装
sudo -s切换到管理员,ls -lh以列表显示,唯一表示:主键
1、安装sudo apt-get install mysql-server
检查进程中是否存在mysql服务:ps -aux | grep "mysql”
windows中需要管理员模式下的cmd在bin目录下mysqld install,然后启动net start mysql
https://www.cnblogs.com/mashangsir/p/11286322.html
文件丢失解决:https://blog.csdn.net/littlehaes/article/details/104127787

2、关闭开启重启:sudo service mysql start/stop/restart,
windows开启Mysql:在安装bin目录下启动:mysql -u -root -p,关闭可以exit/quit
3、安装服务端:sudo apt-get install mysql-server
4、客户端分为命令客户端和图形客户端:
命令客户端:sudo apt-get install mysql-client,通过mysql -u root -p +密码进入。查看版本:select version();windows也一样
图形客户端:下载Navicat或者DBeaver,./start_navicat
5、connection密码123456,双击即可打开,右击可以新建数据库。15版本选择utf8和utf8_general_ci,linux新建标签命令:shift+ctrl+t
二、数据
1、数据类型:整数int,
小数decimal,decimal(5,2)表示5位数,小数占2位
字符串char长度固定不足用空格补,varchar长度自由。text大字符使用。
时间date,time,datetime
枚举(enum)
在这里插入图片描述

图片音频等只存链接不存实物
2、约束:
主键:唯一标识
非空
唯一unique:字段不允许重复
default:默认值
外键:另一个约束表的主键(少用)
三、基操
查看数据库位置: show variables like ‘%datadir%’;
1、链接数据库:mysql -uroot -p
2、退出数据库:exit/quit/ctrl+d
3、退出当前语句:ctrl+c
4、显示数据库版本:select version();
5、显示时间:select now();
6、查看所有数据库:show databases;
7、创建数据库:create database +名称;指定编码方式create databasenew charset=utf8;
8、删除数据库:drop database +名称;当名称出错时给名称加上双引号
9、查看创建的数据库:show create database +名称;
10、查看当前所处的数据库:select database();
11、使用数据库:use +名称;
12、查看当前数据库中所有表:show tables;
13、创建新表:create table if not exists 名称 (id int, name varchar(30));
格式:create table 名称 (字段+类型+约束,);
举例:create table table1 (id bigint(20) unsigned not null auto_increment primary key, ’name‘ varchar(30), ’age‘ tinyint unsigned, ’high‘ decimal(5,2), ’gender‘ enum(“男”,“女”) default “保密”, ’clsaa_id‘ int unsigned);字段的引号是Esc下的引号
13.1注释:comment ‘注释’,查看所有注释:show full columns from table;
14、查看表的结构信息:desc 名称;
15、表中插入数据:insert into 表名 values(按表顺序填写信息);
16、查看插入的数据:select * from 表名;
四、数据的增删改查
1、修改表:添加字段:alter table 表名 add 列名 类型
2、修改表:修改字段:alter table 表名 modify 列名 类型及约束
3、修改表:重命名字段:alter table 表名 change 原名 现名 类型约束
4、修改表:删除字段:alter table 表名 drop 列名
4.1 逻辑删除:alter table 表名 add is_delete bit default 0; updata 表名 set is_delete=1 where id = 1;

5、删除表或数据库:drop table 表名
6、查看创建表的:show create table +名称

7、表插入数据:insert into 表名 values(列一对应名,列二…)
8、enum枚举类型的下标位置1代表其值
9、表插入数据:insert into 表名 values( 列名1,列名2) values(“值1”,“值2“),( , )

10、修改表数值:update 表名 set 想改的列名对应值 where 条件(条件举例:name = 2)
11、查询表指定列:select 列名1,列名2 from 表名
五、数据的查询
1、消除重复行:select distinct 列名 from 表名;
2、查询区间或满足条件的信息:select * from 表名 where age>18 and/or age<28;
select * from 表名 where not (age>=18 and gender=2)
3、模糊查询:select 列名 from 表名 where 列名 like“小%”以小开始的所有信息。like"%小%"所有有“小”的信息。
4、查询至少有两个字的名字:select 列名 from 表名 where 列名 like "__%"两个下划线
5、rlike正则查询以“周”开头的名字:select name from sthdents where name rlike “周.*",以伦结尾:rlike"周.*伦$”
7、范围查找闭区间:between A and B
8、排序查找:从小到大:select * from 表名 where (age between A and B) and C = 1 order by age asc;年纪从小到大排序desc大到小
9、存在值相同情况下排序:
10、聚合函数:
11、分页:select * from 表名 order by age asc limit10,2;每页显示2个,第10页,并且按照age小到大排序
12、CREATE table if not exists ‘zdh’ (
‘id’ bigint(20) unsigned not null auto_increment primary key,
‘name’ varchar(30) default ‘’ comment’姓名’,
‘age’ decimal(5,2) default ‘’ comment ‘年纪’
);

13、连表查询(生成笛卡尔积):select * from 表1, 表2;

14、查询某一个字段在哪几张中:SELECT TABLE_SCHEMA,TABLE_NAME FROM information_schema.COLUMNS WHERE COLUMN_NAME = ‘需要查找的字段’ ;

总结常用:
增:insert into 表名 (字段)values(内容);
新增字段:ALTER table 表名 add 字段 bigint(20) ;

删:delete from 表名 where 字段=条件/like“%条件%”
删除字段:ALTER table 表名 drop 字段

改:update 表名 set 字段=更改的内容 where id=条件
修改字段:ALTER table 表名 modify字段+约束

查:select * from 表名 where 字段=‘条件’
按两个表匹配字段查找:select * from 表1 inner join 表2 on 表1.字段=表2.字段;
select 表1., 表2. from 表1,表2 where 表1.条件=表2.条件;
例:#INSERT into hbtt_report_history (passid,uid ) values (1000,10001);
#DELETE FROM hbtt_report_history where id=3;
#UPDATE hbtt_report_history set uid = 4 where id=2;
#SELECT * FROM hbtt_report_history where monitor_channel = ‘UMENG_CHANNEL_VALUE’;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值