MySQL  客户端版

MySQL Community Server 社区版 开源免费

MySQL的官方网址: http://www.mysql.com/ ,MySQL的社区版本下载地址为: http://dev.mysql.com/downloads/mysql/

数据库登录管理

本地登录客户端命令:  mysql -u用户名 -p密码

远程登录客户端语法:mysql  -u  用户名  -p  密码  -h  ip地址   -P端口号:如果没有改端口号就不用-P指定端口

mysql -h 主机端ip-P 链接端口 -u登录用户 -p密码

mysql -h192.168.11.191 -P 3306 -uroot -pqf123 -e 'show databases;'

-h 指定主机名            【默认为localhost】

-大P MySQL服务器端口       【默认3306】

-u 指定用户名             【默认root】

-p 指定登录密码           【默认为空密码】

-e 接SQL语句,可以写多条拿;隔开

# mysql -h192.168.246.253 -P 3306 -uroot -pqf123 -D mysql -e 'select * from user;'

此处 -D mysql为指定登录的数据库

修改端口yum安装:vim /etc/my.cnf

在到【mysql】标签下面添加port=指定端口。重启服务

用户管理

在数据库创建用户

语法 create user 用户名@(‘可登录ip’%代表所有)identified by ‘设置密码’;

创建完用户授权给用户  grant all on (库名.表明 *.*代表所有库的所有表)to ‘用户名’@‘可登录ip’;

创建用户的并授权   grant (all全部权限)on *.* to ‘用户名’@‘可登录ip’identified by ‘设置密码’;

查看自己的权限   show grants \G

查看别的用户权限  show grants fro 用户名@‘可登录ip’\G

移除所有权限 revoke all on *.* from 用户名@‘可登录ip’

刷新权限   flush privileges;

新部署的mysql  用  grep password /var/log/mysqld.log   过滤MySQl 数据库的密码

进入数据库修改root 用户的密码 alter user‘root’@‘localhost’idnetified by ‘新密码’;

进入数据库修改密码  set password =‘新密码’;

在虚拟机上修改root用户的密码 mysqladmin -uroot -p‘旧密码’ password ‘新密码’

在数据库里给其他用户修改密码 set password for 用户名@‘可登录ip’=‘新密码’;

删除用户 drop user ‘用户名’@‘可登录ip’;

删除用户 delete from mysql.user where user‘用户名’and host=‘可登录ip’;

数据库基本操作

1.查看引擎 show engines;

2.查看mysql服务器版本  select version();

3.查看数据库全部信息  show databases;

4.查看当前所在库 select database();

5.查看当前库下的所有表 show tables;

6.创建数据库 create database 库名;

7.进入数据库 use 库名;

8.创建表 create table 表名(字段 类型,字段 类型);

9.查看当前库下所有表 show tablesl;

10.查看表结构 desc 表名;

11.查看表的状态 show table status like ‘表名’\G

12.查看表里的内容 select * from 表名;

13.修改表名  rename table 旧表名 to 新表名;

14.删除表 drop table 表名;

15.删除库 drop database 库名;

数据类型

1.整形分类:tinyint  smallint  mediumin  int  bigint

| MySQL数据类型   |       最小值                |  最大值

| tinyint(n)             |  -128                        |  127

| smallint(n)           |  -32,768                   |  32,767

| mediumint(n)      |  -8388608                |  8388607

| int(n)                   |  -2,147,483,648       |  2,147,483,647

| bigint(n)              |  -9,223,372,036,854,775,808|  9,223,372,036,854,7

2.浮点数类型      FLOAT

float(5,3)      #一共5位,整数占3位.做了限制

3.字符串类型

字符类型 char   varchar  --存字符串

- char表示定长字符串,长度是固定的

varchar表示可变长字符串,长度是可变的;

4.枚举类型 enum

create table t10(name enum('m','w'));  枚举是只可以从 W,M中选一个

5.日期类型

===时间和日期类型测试:year(年)、date(年月日)、time(时间)、datetime(年月日和时间)、timestamp(年月日和时间)

创建表的时候 字段指定数字类型

例如 create table t1(id int,tizhong float,name varchar(20),sex enum('w','m'),,时间 date);

表完整性约束

约束条件 说明

PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录,不可以为空  UNIQUE + NOT NULL

FOREIGN KEY (FK) 标识该字段为该表的外键,实现表与表之间的关联

NULL            标识是否允许为空,默认为NULL。

NOT NULL    标识该字段不能为空,可以修改。

UNIQUE KEY  (UK)    标识该字段的值是唯一的,可以为空,一个表中可以有多个UNIQUE KEY

AUTO_INCREMENT 标识该字段的值自动增长(整数类型,而且为主键)

DEFAULT 为该字段设置默认值 default设置默认值,

UNSIGNED            无符号,只能设置正数

1.主键

每张表里只能有一个主键,不能为空,而且唯一,主键保证记录的唯一性,主键自动为NOT NULL。

给存在的表添加主键     alter table 表名 add primary key (字段);

创建表的时候指定主键   create table 表名(字段1 char(20),字段 2char(150),primary key(字段1));

删除主键  alter table 表名  drop  primary key;

2.自动增长.auto_increment------自动编号,且必须与主键组合使用默认情况下,起始值为1,每次的增量为1。当插入记录时,如果为AUTO_INCREMENT数据列明确指定了一个数值,则会出现两种情况:

- 如果插入的值与已有的编号重复,则会出现出错信息,因为AUTO_INCREMENT数据列的值必须是唯一的;

- 如果插入的值大于已编号的值,则会把该插入到数据列中,并使在下一个编号将从这个新值开始递增。也就是说,可以跳过一些编号。如果自增序列的最大值被删除了,则在插入新记录时,该值被重用。

(每张表只能有一个字段为自增) (成了key才可以自动增长)

创建表的时候 设置自动增长  create table 表名 (字段1 INT 主键 自动增长,字段2 VARCHAR(30),字段3t VARCHAR(50));

删除自动增长   alter table 表名 change 字段名  新字段名 int not null; 更改字段为不能为空

3.设置唯一约束 UNIQUE,字段添加唯一约束之后,该字段的值不能重复,也就是说在一列当中不能出现一样的值。

create table表名 (字段 INT,字段2 VARCHAR(30) UNIQUE,comment VARCHAR(50)); 设置字段2为 唯一约束

4.null与not null

1. 是否允许为空,默认NULL,可设置NOT NULL(闹),字段不允许为空,必须赋值

2. 字段是否有默认值,缺省的默认值是NULL,如果插入记录时不给字段赋值,此字段使用默认值

5.设置默认约束 default 设置默认值   create table 表名(字段1 int,字段2 varchar(50) default  '1' not null); 设置字段2 不能为空 未输入时默认写1;

删除默认约束 alter table user alter 字段 drop default;  删除用drop  修改用set

表操作

一 .添加新字段  (嗷特儿)alter table 表名 add 字段 类型;

alter table 表名 add 添加的字段 (和类型) after name; -------把添加的字段放到name后面

alter table 表名 add 添加的字段(和类型) first; ----------把添加的字段放在第一个

二 1.修改字段和类型  alter table 表名 change 旧字段 新字段 类型; #change修改字段名称,类型,约束,顺序

2.修改字段类型,约束,顺序   alter table 表名 modify 字段 类型; #modify 不能修改字段名

3..alter table t3 modify maxs int(20) after math;    #修改类型并更换位置

4.删除字段 alter table 表名 drop 字段;  #drop 丢弃的字段。

三、插入数据(添加记录)

1.添加一条记录 insert into 表名(字段1,字段2,字段3,字段4) values(外六斯)(1,"tom","m",90);

insert into t3(id,name,sex,age) values(1,"tom","m",18);

2.用set添加记录

insert into t3 set id=4,name="zhangsan",sex="m",age=21;

Update 表名 set 字段名=“修改的内容” where “给谁修改”

3.更新记录

update 表名 set  修改的字段  where  给谁修改;

mysql> update t3 set id=6 where name="xiaoli";

4.删除记录

删除单条记录  mysql> delete from t3 where id=6;   #删除那个记录,等于几会删除那个整条记录

删除所有记录   mysql> delete from t3;

四、单表查询

1.简单查询

select * from 表名; 查看这个表的所有内容

2.多字段查询: select id,name, from 表名; 查看 id、name 字段的所有内容

3.有条件查询:where      select id,name from 表名 where id<=3;  查看id,name id >3的所有内容

4.统计记录数量:count()  查看字段下有多少条记录      select count(*) from 表名;  查看 表下有多少条记录

5.统计字段得到数量:  select count(id) from 表名; 查看id字段有多少条记录

6.避免重复DISTINCT:表里面的数据有相同的  去重   select distinct 字段 from 表名;

7.多条件查询:  and   ----和语法: select   字段,字段2 from   表名   where   条件 and where 条件;

select 字段,字段 from 表名 where name='hr' and salary>1000;  查找 名字是hr 工资大于1000的内容

8.多条件查询:  or   ----或者

语法:       select   字段,字段2 from   表名   where   条件   or   条件;

select name from 表名 where salary>5000 and salary<10000 or dep_id=102; 查看工资大于5000和小于一万 或者id是102的内容

9.关键字 BETWEEN AND  什么和什么之间。

select name,salary from 表名shere salary between 5000and15000; 查看 工资在5千和一万5之间的内容

8.排序查询    order by  :指令,在mysql是排序的意思。

select name,salary from 表名 order by salary; #-默认从小到大排序。 查询 名字和工资 按照工资从小到大排序

select name,salary from 表名 order by salary desc; #降序,从大到小    查询 名字和工资 按照工资从大到小排序

9.分组查询 :group  by

select count(name),post from 表名 group by post;  把neme字段 按照post相同的分组查看

MYSQL数据库使用操作详解相关推荐

  1. CMD命令操作MySql数据库,操作详解

    第一:mysql服务的启动和停止 net stop mysql net start mysql 第二:登陆 mysql –u用户名 [–h主机名或者IP地址] –p密码 说明:用户名是你登录的用户,主 ...

  2. laravel 调试mysql_Laravel - MySQL数据库的使用详解3(Query Builder用法2:新增、修改、删除)...

    五.新增.修改.删除操作 在前文中我介绍了如何使用Query Builder(查询构造器)进行数据查询,下面接着介绍如何使用它进行数据的增.删.改操作.同样假设我们有如下用户表(user): 1,新增 ...

  3. MySQL 数据库 source 命令详解及实例

    MySQL 数据库 source 命令详解及实例 MySQL 数据库 source 命令,该命令是数据库导入命令.source 命令的用法非常简单,首先你需要进入 MySQL 数据库的命令行管理界面, ...

  4. html5 php 数据库操作,HTML_HTML5本地数据库基础操作详解,下面分别介绍本地数据库的各 - phpStudy...

    HTML5本地数据库基础操作详解 下面分别介绍本地数据库的各个API及其使用方法. 1.利用openDatabase创建数据库 我们可以利用openDatabase方法创建数据库.openDataba ...

  5. linux系统——mysql数据库默认字符集详解

    linux系统--mysql数据库默认字符集详解 - mysql的字符集配置细化到四种 对数据库server配置 对库设置 对表设置 对列设置 - 对mysql-server设置 对server设置是 ...

  6. 17@MySQL数据库读现象详解(脏读、幻读、不可重复读)

    文章目录 MySQL数据库读现象 一.数据库的读现象 1.脏读(dirty read):读取未提交数据 [案列详解] 2.不可重复读取 (nonrepeatable read):前后多次读取,数据内容 ...

  7. dbeaver连接mysql 驱动jar_Jmeter(七) 从入门到精通 建立数据库测试计划实战lt;MySQL数据库gt;(详解教程)...

    1.简介 在实际工作中,我们经常会听到数据库的性能和稳定性等等,这些有时候也需要测试工程师去评估和测试,上一篇文章宏哥主要介绍了jmeter连接和创建数据库测试计划的过程,宏哥在文中通过示例和代码非常 ...

  8. mysql数据库安装最详解

    数据库的基本概念 当今主流的数据库 SQL Server (微软公司产品) Oracle (甲骨文公司产品) DB2 (IBM公司产品) MySQL (甲骨文公司收购) 什么是mysql数据库 MyS ...

  9. java连接mysql数据库方法_java连接mysql数据库的方法详解

    连接mysql数据库在java中有几种常用的方式有官方提供的JDBC连接MySQL数据库也有后面我们讲到的其它的方式连接数据库,具体如下. JDBC连接MySQL数据库 首先要下载Connector/ ...

最新文章

  1. 委托、lamda表达式..委托概念-匿名函数-泛型委托-Lamda表达式-多播委托
  2. python爬虫,爬取猫眼电影2(xpath和bs4)
  3. openstack搭建之-nova配置(10)
  4. IDEA出现Error during artifact deployment. See server log for details.
  5. Node.js 使用 JWT 进行用户认证
  6. Critical dependency: require function dependencies cannot be statically extracted
  7. ResNet网络结构详解(Tensorflow2.6.0实现网络结构)
  8. MovieClip详解
  9. js/javaScript通过setTimeout做动画和需要注意的点
  10. FiveThirtyEight Comic Characters Dataset(五分之八漫画人物数据集)
  11. 【免费内网穿透】Windows远程桌面连接树莓派
  12. matlab FFT 和IFFT
  13. 数据结构实验报告,二叉树的基本操作(C语言)
  14. 阿里云栖大会100位顶级大咖演讲PPT+视频全分享!
  15. win7更新错误0x800b0109_Win7自动更新失败怎么办
  16. 【PCL自学:Filtering】PCL中的各类滤波器介绍与使用 (持续更新)
  17. linux dock工具,六个ubuntu下的mac dock工具栏
  18. 突破数据极限:计算24的阶乘和n的m次方。
  19. 8大网页设计新趋势(转载)
  20. 搞笑的好友印象代码_笨蛋┗━━┛人笨不能复生

热门文章

  1. Academic Phrasebank 2021《学术短语库 2021在线版 英译汉》
  2. Sessionfactory.getCurrentSession与 openSession() 的区别
  3. php xml 转义字符,Android常见XML转义字符(总结)
  4. html如何设置自动对齐,HTML5 教程之CSS 水平对齐(Horizontal Align)
  5. 本地host管理推荐
  6. uni-app快速开发微信小程序、h5、和app
  7. 腾讯同事内推的那位Linux C/C++后端开发同学面试没过......
  8. linux三剑客-grep详解
  9. 索尼ea300c笔记本u盘装系统的教程
  10. flex布局超级详细的完整教程(看完印象深刻)