MySQL学习【第五篇SQL语句上】

一.mysql命令

1.连接服务端命令

1.mysql -uroot -p123 -h127.0.0.1

2.mysql -uroot -p123 -S /tmp/mysql.sock

3.mysql -uroot -p123 -hlocalhost

4.mysql -uroot -p123

 

2.mysql登陆后的一些命令

1.\h或者help     查看帮助

2.\G        格式化查看数据(以key:value形式)

3.\T 或 tee        记录日志

4.\c         结束命令

5.\s或者status  查看状态信息

6.\. 或者source    导入sql数据

7.\u 或use    使用数据库

8.\q或exit或quit  退出

 

3.mysqladmin的一些使用

1.查看mysql存活状态

[root@db01 ~]# mysqladmin -uroot -p123 ping

 

 2.查看mysql状态信息

[root@db01 ~]# mysqladmin -uroot -p123 status

 

3.关闭mysql进程

[root@db01 ~]# mysqladmin -uroot -p123 shutdown

 

4.查看mysql参数

[root@db01 ~]# mysqladmin -uroot -p123 variables

 

5.删除数据库

[root@db01 ~]# mysqladmin -uroot -p123 drop DATABASE

 

6.创建数据库

[root@db01 ~]# mysqladmin -uroot -p123 create DATABASE

 

7.重载授权表

[root@db01 ~]# mysqladmin -uroot -p123 reload

 

8.刷新日志

[root@db01 ~]# mysqladmin -uroot -p123 flush-log

 

9.刷新缓存主机

[root@db01 ~]# mysqladmin -uroot -p123 reload

 

10.修改登陆密码

[root@db01 ~]# mysqladmin -uroot -p123 password

 

 

4.sql语句创建库

1.创建didi数据库

mysql> create database didi;

 

2.查看数据库

mysql> show databases;

 

3.查看创建数据库语句

mysql> show create database didi;

 

4.创建数据库添加字符集

mysql> create database test charset utf8;

 

5.删除数据库

mysql> drop database didi;

 

6.修改数据库属性

mysql> alter database test charset gbk;

 

7.进入数据库

mysql> use didi;

 

 

8.查看当前所在数据库

mysql> select database();

 

5.创表必须知道的数据类型

1.int          整数   -2^31~2^31 -1

2.varchar  字符类型(变长)

3.char     字符类型(定长)  

4.tinyint   整数 -128~128 (取值范围)

5.enum   枚举类型,只能选择枚举的一种类型,例如enum('m','f')

6.datatime    时间类型

 

6.创表所需的数据属性

1.not null            非空

2.primary key     主键(唯一且非空)

3.unique key      唯一键(唯一可非空)

4.auto_increment    自增(必须是主键或唯一键)

5.unsigned  非负

6.default      默认

7.comment       注释

 

7.创建表

1.创建一个名字叫student的表,表中有列名为(sid,sname,sage,sgender,cometime) ,其中sid为int类型,非空,设为主键,并且自增,注释为学号;sname为varchar类型为20位(一个中文占3位,和字符集有关),非空,注释为学生姓名;

sage为tinyint类型 ,非负数(因此取值范围为【0-256】),注释为学生年龄;sgender为枚举类型,非空,默认为男(m),注释为学生性别;cometime为datatime类型,默认为设置时间,注释为入学时间,字符集设为utf8,引擎为innodb

mysql> create table student(
sid INT NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT ‘学号’,
sname VARCHAR(20) NOT NULL COMMENT ‘学生姓名’,
sage TINYINT UNSIGNED COMMENT ‘学生年龄’,
sgender ENUM('m','f')  NOT NULL DEFAULT ‘m’ COMMENT ‘学生性别’,
cometime DATETIME default NOW() COMMENT ‘入学时间’)chatset utf8 engine innodb;

 

2.查看建表语句

mysql> show create table student;

 

3.查看当前数据库下有什么表

mysql> show tables;

 

4.查看表中列的定义信息

mysql> desc student;

 

5.删除表

mysql> drop table student;

 

 

6.修改表名

mysql> alter table student rename stu;

 

 

7.添加列和列定义

mysql> alter table stu add age int;

 

 

8.添加多个列

mysql> alter table stu add test varchar(20),add qq int;

 

 

9.添加列为第一列

mysql> alter table stu add classid varchar(20) first;

 

 

10.添加列为指定位置

mysql> alter table stu add phone int after age;

 

 

11.删除指定列

mysql> alter table stu modify sid varchar(20);

 

 

12.修改列名,以及约束条件

mysql> alter table stu change phone telphone char(20);

 

 

8.授权用户

1.授权root@'10.0.0.1'用户所有权限(并非超级管理员)

mysql> grant all on *.* to root@'10.0.0.1' identified by '123';

 

 

2.授权一个用户为超级管理员

mysql> grant all on *.* to root@'10.0.0.1' identified by '123' with grant option;

 

其他一些能在后面带的参数

max_queries_per_hour:一个用户每小时可发出的查询数量
max_updates_per_hour:一个用户每小时可发出的更新数量
max_connetions_per_hour:一个用户每小时可连接到服务器的次数
max_user_connetions:允许同时连接数量

 

 

3.收回一个用户select权限

mysql> revoke select on *.* from root@'10.0.0.1';

 

 

4.查看某个用户的权限

mysql> show grants for root@'10.0.0.1';

 

 

9.插入数据

1.插入单条数据

mysql> insert into stu(classid,birth.sname,sage,sgender,comtime,telnum,qq) values('linux01',1,NOW(),'zhangsan',20,'m',NOW(),110,123456);

 

2.插入多条数据

mysql> insert into stu(classid,birth.sname,sage,sgender,comtime,telnum,qq) values('linux01',1,NOW(),'zhangsan',20,'m',NOW(),110,123456),
('linux02',2,NOW(),'zhangsi',21,'f',NOW(),111,1234567);

 

 

10.更新数据

1.更新一张表某个列的所有数据

mysql> update student set sgender='f';

也可以

mysql> update student set sgender='f' where 1=1;

 

2.更新一张表某个列某行的数据(添加条件)

mysql> update student set sgender='f' where sid=1;

 

11.删除数据

1.删除一张表的所有数据

mysql> delete from student;

 

2.删除一张表指定区域的数据

mysql> delete from student where sid=3;

 

3.删除表

mysql> truncate table student;

 

4.伪删除,就是内容还在,但可以用一些手段看不到,真实工作环境使用

mysql> alter table student add status enum(1,0) default 1;mysql> update student set status='0' where sid=1;mysql> select * from student where status=1;

 

 

12.select用法

1.查询student表中的列name

mysql> select name from student;

 

2.限制查询行数为2

mysql> select name from student limit 2;

 

3.去重查询

mysql> select district(name) from student ;

 

 

4.查询所得到信息的数目

mysql> select count(name) from student;

 

 

5.查询指定信息(查二班的同学名字)

mysql> select name from student where class=2;

 

6.多条件查询(查二班的长的丑的人名字)

mysql> select name from student where class=2 and face='ugly';

 

7.模糊查询

mysql> select nam from student where name like '%H%' ;

 

8.顺序查询

mysql> select name from student order by hight asc;

 

9.倒叙查询

mysql> select name from student order by hight desc;

 

10.范围查询

mysql> select * from student where class>1;

 

11.范围or,in,不等于(<>)

mysql> select * from student where name='CHN' or face='ugly';就当有个叫两个名字的人吧
mysql> select * from student where name in ('张三','李四');不在二班的人
mysql> select * from student where  class<>2;

 

12.查看表中数据行数

select count(*) from city;

 

13.查看去重数据行数

select count(distinct name) from city;

 

转载于:https://www.cnblogs.com/busiren/p/10579049.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/536631.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

phpexcel.php linux,phpexcel在linux系统报错如何解决

最近有个tp3.2的项目迁移到linux系统上了&#xff0c;突然有天发现原本在win server 2008上运行没问题的excel导出功能在新的系统上不能使用了。报错如下&#xff1a;说是1762行有问题&#xff0c;找到这个文件的代码看看&#xff1a;/*** Get an instance of this class** acc…

优雅的redux异步中间件 redux-effect

不吹不黑&#xff0c;redux蛮好用。只是有时略显繁琐&#xff0c;叫我定义每一个action、action type、使用时还要在组件上绑定一遍&#xff0c;臣妾做不到呀&#xff01;下面分享一种个人比较倾向的极简写法&#xff0c;仍有待完善&#xff0c;望讨论。 github: github.com/li…

oracle 中累加函数,Oracle 分析函数分组累加!

用户号码 登陆时间13000000002010-01-0113000000012010-01-0113000000022010-01-0213000000012010-01-0213000000032010-01-0313000000022010-01-0313000000042010-01-0413000000032010-01-0413000000042010-01-0213000000062011-01-0413000000012011-01-04剔除重复登陆的用户,…

asp.net core系列 48 Identity 身份模型自定义

一.概述 ASP.NET Core Identity提供了一个框架&#xff0c;用于管理和存储在 ASP.NET Core 应用中的用户帐户。 Identity添加到项目时单个用户帐户选择作为身份验证机制。 默认情况下&#xff0c;Identity可以使用的 Entity Framework (EF) Core 数据模型。 本文介绍如何自定义…

oracle中创建游标,oracle 存储过程创建游标

Oracle与Sql Server差异点详解1、create函数或存储过程异同点Oracle 创建函数或存储过程一般是 create or replace ……SQL SERVER 则是在创建之前加一条语句&#xff0c;先判断是否已经存在&#xff0c;如果存在删除已有的函数或存储过程。函数语句&#xff1a;if exists (sel…

hosts文件不起作用

突然发现电脑的hosts文件不起作用了。之前用的狠正常&#xff0c;近期也没有修改过。首先排除什么格式、DNS、注册表之类的问题。最终解决办法&#xff08;权限问题&#xff1a;有问题的hosts文件图标上有个锁&#xff09;&#xff1a;1.C:\Windows\System32\drivers\etc下复制…

oracle面临的挑战,未来数据库管理员面临的三大挑战

原标题&#xff1a;未来数据库管理员面临的三大挑战前言今天的数据库管理员面临着三大挑战&#xff1a;工作重心向以应用程序为中心转移、支持多个数据库平台的需求、在云端以及在本地管理数据库性能的责任不断扩大。为了在今天和未来都能站稳脚跟&#xff0c;数据库管理员需要…

Reducer拆分

看到Redux官网上Reducer拆分后&#xff0c;最后生成的state的组合有点懵&#xff0c;主要是对combineReducers()这个工具类不了解&#xff0c;其实该方法是消除了一些样板代码。 如todoApp事例&#xff1a; import { combineReducers } from reduxconst todoApp combineReduce…

oracle中asmcmd,ASM工具asmcmd

Oracle的ASM一直不够透明&#xff0c;但Oracle还是提供了一些工具来访问ASM磁盘组的&#xff0c;asmcdm就是其中一个工具,本文将对其进行详细介绍。感觉Oracle的ASM一直很不透明&#xff0c;不过Oracle还是提供了一些工具来访问ASM磁盘组的&#xff0c;asmcdm就是其中一个工具。…

php页面底部信息居中,css底部如何局中?css三种居中方法

本篇文章给大家带来的内容是关于css底部如何局中&#xff1f;css三种居中方法&#xff0c;有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对你有所帮助。某天组长让我改一个表格的样式&#xff0c;要求底部局中。当时想很简单的嘛&#xff0c;哼哧哼哧…

打造汽车“安卓平台”,大众或亲手干掉传统汽车产业

干掉传统汽车产业的&#xff0c;很可能是大众&#xff0c;而不是特斯拉。 于无声处听惊雷。 2019年的日内瓦车展&#xff0c;看起来并没有传出太大的新闻。汽车世界的目光&#xff0c;依然被特斯拉的喧嚣所吸引。 然而&#xff0c;大众汽车展台上发生的一件看似不起眼的小事情&…

php返回101,PHP 101:变量与函数

功能很好.我看到功能徽标()比$logo更好. echo不占用太多内存,但$logo确实如此.即使函数logo()需要一些东西,它也将由PHP自己的垃圾收集器处理.您还可以使用这些函数来确保不会滥用分配的内存.> memory_get_peak_usage();> memory_get_usage();说明&#xff1a;Upon the e…

从 SPA 到 PWA:Web App的下一站在哪?

从AJAX&#xff08;Asynchronous JavaScript XML&#xff0c;异步JavaScript和XML&#xff09;开始&#xff0c; 尤其是 AngularJS 推出之后&#xff0c;SPA&#xff08;Single Page App&#xff0c;单页应用&#xff09;已经成为前端 App 的必选方案。 SPA 可以在客户端提供完…

php如何调用手机拨打电话,ionic调用手机系统的拨打电话

linux中wc命令用法Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 1&#xff0e;命令格式: wc [选项]文件... 2&#xff0e;命令功能: 统计指定文件中的字节数. ...POJ1364 King-差分Description Once, in one kingdom, ther…

使用class-validator替换Joi包的方法

前言 对每个接口的传入参数进行校验&#xff0c;是一个Web后端项目的必备功能&#xff0c;有一个npm包叫Joi可以很优雅的完成这个工作&#xff0c;比如这样子&#xff1a; const schema {userId: Joi.string() }; const {error, value} Joi.validate({ userId: a string }, s…

linux服务器下降,linux - 远程升级Ubuntu:如何最大程度地降低丢失服务器的风险? - Ubuntu问答...

问题描述背景&#xff1a;由于raid控制器的不兼容性问题&#xff0c;我被迫将服务器从Ubuntu 8.04 LTS远程升级到10.04 LTS。与服务器的Internet连接比较稳定&#xff0c;很少掉线。尽管如此&#xff0c;我还是担心在升级时会丢失通过SSH的连接&#xff0c;从而使服务器处于无法…

Linux中英文命令对应

本文我们把Linux的中英文命令做了对应翻译&#xff0c;给需要的朋友参考一下。很多朋友在论坛上找Linux英文命令&#xff0c;我们给大家整理了比较全的Linux英文命令&#xff0c;并且附上了对应的中文意思。 su&#xff1a;Swith user 切换用户&#xff0c;切换到root用户 cat:…

linux实验四文件安全,西北农林科技大学Linux实验四 用户和文件安全

一、 实验目的实验四 用户和文件安全1. 理解用户、组的概念2. 理解/etc/passwd、/etc/group、/etc/shadow文件 3. 练习useradd、groupadd、gpasswd、groups命令二、 实验内容 1. 添加用户 2. 添加组3. 添加用户到工作组 4. 改变目录原始组 5. 建立多个用户共享的目录6. 理解文件…

Unable to resolve dependency问题解决

Unable to resolve dependency 是一个让我头疼的问题 之前总是阴差阳错调试好 但是也没有总结出来方法 但是今天找到了 方法来源 https://jingyan.baidu.com/article/19192ad8c489dfe53e5707ee.html 原因就是用户的gradle.properties 设置了代理&#xff0c;将文件内的代理注释…

linux 服务器进程,如何查看Linux服务器的进程

Linux服务器正常启动后&#xff0c;提供服务时会调用程序&#xff0c;占用进程。这时候如何查看系统中有哪些进程在被调用呢&#xff1f;我们可以通过以下命令来查看。1.psps命令是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和它所运行的状态…